inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

13-16) UpdateAPI test 에러

해결됨

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)

강의 수강 내용에 따라 test_author_can_update_post 와 test_non_author_cannot_update_post를 수행하면 하기의 에러가 발생합니다. list, retrieve, create, destroy 전부 정상 작동하는데 update만 해당 오류가 발생합니다 /blog/api.py, line 75, in has_permission if request.method in SAFE_METHODS: NameError: name 'SAFE_METHODS' is not defined 수업 내용대로 따라가고 있는데 ㅠㅠ 오류가 발생한 곳이 어디인지 알 수 가 없습니다. 수업 내용을 따라서 구현한 코드는 다음과 같습니다. # blog/tests/test_api.py import base64 import pytest from django.core.exceptions import ObjectDoesNotExist from django.urls import reverse from rest_framework import status from rest_framework.response import Response from rest_framework.test import APIClient from accounts.models import User from accounts.tests.factories import UserFactory from blog.models import Post from blog.tests.factories import PostFactory def create_user(raw_password: str = None) -> User: """새로운 User 레코드를 생성 및 반환""" return UserFactory(raw_password=raw_password) def get_api_client_with_basic_auth(user: User, raw_password: str) -> APIClient: """인자의 User 인스턴스와 암호 기반에서 Basic 인증을 적용한 APIClient 인스턴스 반환""" # *.http 파일에서는 자동으로 base64 인코딩을 수행해줬었습니다. base64_data: bytes = f"{user.username}:{raw_password}".encode() authorization_header: str = base64.b64encode(base64_data).decode() client = APIClient() client.credentials(HTTP_AUTHORIZATION=f"Basic {authorization_header}") return client @pytest.fixture def unauthenticated_api_client() -> APIClient: """Authorization 인증 헤더가 없는 기본 APIClient 인스턴스 반환""" return APIClient() @pytest.fixture def api_client_with_new_user_basic_auth(faker) -> APIClient: """새로운 User 레코드를 생성하고, 그 User의 인증 정보가 Authorization 헤더로 지정된 APIClient 인스턴스 반환""" raw_password: str = faker.password() user: User = create_user(raw_password) api_client: APIClient = get_api_client_with_basic_auth(user, raw_password) return api_client @pytest.fixture def new_user() -> User: """새로운 User 레코드를 생성 및 반환""" return create_user() @pytest.fixture def new_post() -> Post: """새로운 Post 레코드를 반환""" return PostFactory() @pytest.mark.it("작성자가 아닌 유저가 수정 요청하면 거부") @pytest.mark.django_db def test_non_author_cannot_update_post(new_post, api_client_with_new_user_basic_auth): url = reverse("api-v1:post_edit", args=[new_post.pk]) response: Response = api_client_with_new_user_basic_auth.patch(url, data={}) assert status.HTTP_403_FORBIDDEN == response.status_code @pytest.mark.it("작성자가 수정 요청하면 성공") @pytest.mark.django_db def test_author_can_update_post(faker): raw_password = faker.password() author = create_user(raw_password=raw_password) created_post = PostFactory(author=author) url = reverse("api-v1:post_edit", args=[created_post.pk]) api_client = get_api_client_with_basic_auth(author, raw_password) data = {"title": faker.sentence()} response: Response = api_client.patch(url, data=data) assert status.HTTP_200_OK == response.status_code assert data["title"] == response.data["title"] ## core/mixins.py from typing import List, Optional, Type from colorama import Fore from django.conf import settings from django.db.models import Model, QuerySet from rest_framework import permissions from rest_framework.renderers import BrowsableAPIRenderer, JSONRenderer from rest_framework.request import Request from rest_framework.response import Response from rest_framework.serializers import Serializer from rest_framework.utils.serializer_helpers import ReturnDict from rest_framework.views import APIView from core.permissions import make_drf_permission_class class JSONResponseWrapperMixin: def finalize_response( self, request: Request, response: Response, *args, **kwargs ) -> Response: is_ok = 200 <= response.status_code < 400 accepted_renderer = getattr(request, "accepted_renderer", None) if accepted_renderer is None or response.exception is True: response.data = { "ok": is_ok, "result": response.data, } elif isinstance( request.accepted_renderer, (JSONRenderer, BrowsableAPIRenderer) ): response.data = ReturnDict( { "ok": is_ok, "result": response.data, # ReturnList }, serializer=response.data.serializer, ) return super().finalize_response(request, response, *args, **kwargs) class PermissionDebugMixin: if settings.DEBUG: def get_label_text(self, is_permit: bool) -> str: return ( f"{Fore.GREEN}Permit{Fore.RESET}" # colorama 라이브러리 활용 if is_permit else f"{Fore.RED}Deny{Fore.RESET}" ) def check_permissions(self, request: Request) -> None: print(f"{request.method} {request.path} has_permission") for permission in self.get_permissions(): is_permit: bool = permission.has_permission(request, self) print( f"\t{permission.__class__.__name__} = {self.get_label_text(is_permit)}" ) if not is_permit: self.permission_denied( request, message=getattr(permission, "message", None), code=getattr(permission, "code", None), ) def check_object_permissions(self, request: Request, obj: Model) -> None: print(f"{request.method} {request.path} has_object_permission") for permission in self.get_permissions(): is_permit: bool = permission.has_object_permission(request, self, obj) print( f"\t{permission.__class__.__name__} = {self.get_label_text(is_permit)}" ) if not is_permit: self.permission_denied( request, message=getattr(permission, "message", None), code=getattr(permission, "code", None), ) class TestFuncPermissionMixin: TEST_FUNC_PERMISSION_CLASS_NAME = "TestFuncPermissionMixin" @classmethod def get_test_func_permission_instance(cls) -> permissions.BasePermission: permission_class = make_drf_permission_class( class_name=cls.TEST_FUNC_PERMISSION_CLASS_NAME, # *_test_func_name 속성이 지정되면, 이 권한 클래스가 사용된 APIView 클래스에서 # 지정 이름의 메서드를 찾습니다. has_permission_test_func_name="has_permission", has_object_permission_test_func_name="has_object_permission", ) return permission_class() def get_permissions(self) -> List[permissions.BasePermission]: # 기존 permission_classes 설정에 권한 정책을 추가하는 방식으로 동작 return super().get_permissions() + [self.get_test_func_permission_instance()] def has_permission(self, request: Request, view: APIView) -> bool: return True def has_object_permission( self, request: Request, view: APIView, obj: Model ) -> bool: return True

  • react
  • python
  • django
  • web-api
  • htmx
pplkjh2 댓글 2 좋아요 0 조회수 116

android 실행 에러 질문있습니다

미해결

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

안녕하세요 강의 잘 보고 있습니다. 현재 저는 Mac을 사용하고 있고 인텔리제이로 iOS 와 Android 둘다 실행하는것으로 강의를 보며 공부하고 있는데요 Android를 빌드 할때 " Lost connection to device. Finished with error: getVM: (-32000) Service connection disposed the Dart compiler exited unexpectedly. " 와 같은 메시지와 함께 실행이 되지 않습니다 아직 초보라 구글링하여 혼자 해결해보려해도 방법을 찾지못해 질문드립니다.

  • flutter
  • 클론코딩
이윤주 댓글 2 좋아요 0 조회수 259

섹션5 파라미터 수집과 변환에서 시차 문의

해결됨

코드로 배우는 스프링 웹 프로젝트 - Basic

강의4에서 강의5로 넘어오면 SampleController.java에 작성하지 않았던 코드가 작성되어 있습니다. 강의에서 보여지던 git 주소와 실제 git에서 검색되는 레파지토리 이름이 다름. spring2024_template 인가 싶어서 보면 이것도 브런치 ch03, ch07 두개 뿐인데 그나마도 강의에서 보여주는 소스코드와 다릅니다. 교재와 강의와 git이 모두 일관성이 없어서 따라가기가 벅차네요. 강의 찍으신 거 그대로 실습해보시고 올리시는 게 맞나요 ?? 강의초기에 미리 만들어둔 JSP 파일이 없어서 에러나는 부분 컨트롤러 소스 주석 푸실 때 언급이라도 해주시면 좋겠습니다. 강의 마칠 때(9:22) 즈음 되어서 에러나는 게 정상입니다. 라고 하시면 1~4강 강의 진행 하다가 갑자기 5강 강의 초반에 에러 떠서 이것저것 확인해보고 하느라 시간 잡아먹게 되네요.

  • java
  • jsp
  • spring
  • mybatis
박기남 댓글 1 좋아요 0 조회수 186

인텔리제이 앱이 안 열려요

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 인텔리제이 앱이 어제까지만 해도 됬는데 갑자기 오늘 키려고 보니 현재 Pc에서는 앱을 실행할 수 없다고 뜨는데 어떻게 해야하나요?ㅠㅠ

  • java
water678qetuo678 댓글 1 좋아요 0 조회수 298

강의자료 이미지 안나옴

해결됨

남박사의 파이썬 기초부터 실전 100% 활용

파이썬 기본문법 강의자료 이미지가 안나옵니다.

  • python
  • 웹-크롤링
teran 댓글 3 좋아요 0 조회수 287

build 시 jdk 깔았음에도 java installations does not exist 에러

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요 정말 하다 하다 안돼서 질문 남깁니다.. 공부하고 싶어요 도와주세요 ㅠㅠㅠㅠ 1 ) build 시 jdk 깔았음에도 java installations does not exist 에러 예전에 jdk11썼었는데 학기끝나고 다시 공부하려고 보니 17로 바꾸라고 해서 jdk:17 / springBoot: 3 설정했는데 아래 첨부드린것 과 같은 에러가 나요.. 17로 바꿨음에도 불구하고 gradle 이 11을 찾는 것 같아보이는데(?) 왜 그런걸까요? ( 안쓰는 버전들의 jdk를 좀 지우긴 했어요..) 1-1 )Gradle 사용자 홈 설정에서 path를 설정하는데, gradle파일이 C:\Users\이름\.gradle C:\JavaSpring\hello-spring\gradle 이렇게 두 개 존재하는 것 같은데 어떤걸로 해야 하는 건가요 ? 제일 처음에 Gradle 사용자 홈 설정은 C:\JavaSpring\hello-spring\gradle 으로 되어있어서 이게 문제일까 싶어서 바꿨는데 어떤경로가 맞는건가요..? <에러화면> <각종 설정 화면> templates/index.html - localhost:8080/hello 안뜸.. 2번은 해결했습니다. 1번은 아직이에요 ㅠㅠㅠㅠ

  • java
  • spring
  • mvc
  • spring-boot
study 댓글 1 좋아요 0 조회수 336

스프링 부트 3버전으로 따라가시는 분들 참고하세요

미해결

스프링 시큐리티 OAuth2

build.gradle에서 implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity 5 :3.1.3.RELEASE' 가 아닌 implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity 6 :3.1.3.RELEASE' 으로 의존성을 설정해야 합니다. 스프링 부트 3버전부터는 타임리프 엑스트라에서 5가 아닌 6만 인식하여 동작하므로 5로 설정하면 인증 동작에 오류가 생겨서 아무리 빌드를 다시해도 isAuthentication()이 동작하지 않으니 logout이 안 사라집니다.

  • java
  • spring
  • spring-boot
  • oauth
kekim 댓글 1 좋아요 1 조회수 565

4회차 API 이해하기 강의와 강의자료 차이...

해결됨

Flutter 앱 개발 기초

4회차 "API 이해하기" 강의와 강의자료에 차이가 있는거 같습니다. 예를들어, 강의에는 "크롬 JSON Viewer 확장 프로그램 설치" 내용이 있지만 (8분 15초), 4회 강의자료에는 없네요....

  • flutter
붉명 댓글 2 좋아요 1 조회수 126

갑자기 빨간밑줄이 뜨며 실행이 안됩니다.

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 에러메시지는 package org.aspectj.lang does not exist 라고 뜨며 TimeTraceAop 클래스 내에 곳곳 빨간줄이 뜹니다. 왜그러죠?? package hello.hello_spring.aop; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.springframework.stereotype.Component; @Aspect @Component public class TimeTraceAop { @Around("execution(* hello.hello_spring..*(..))")//그 실행하는데 패키지 명 그리고 거기 밑에 있는 거 여기에다가 여기다 클래스 명 등등에게 public Object execute( ProceedingJoinPoint joinPoint) throws Throwable {//서비스명만 측정하려면 hello.hello_spring.service long start = System.currentTimeMillis(); System.out.println("START: " + joinPoint.toString()); try { return joinPoint.proceed();//다음 메서드로 진행 } finally { long finish = System.currentTimeMillis(); long timeMs = finish - start; System.out.println("END: " + joinPoint.toString()+ " " + timeMs + "ms"); } } }

  • java
  • spring
  • mvc
  • spring-boot
sh hhyeogi365 댓글 1 좋아요 0 조회수 184

auto-ddl 기능이 안됩니다 ㅠㅠㅠ

미해결

실전! 스프링 데이터 JPA

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] auto-ddl 기능이 제대로 작동하지 않아서 문의드립니다. 간단한 문제인데 혼자 해결 못해서 죄송합니다. yml 파일 문법은 다 맞는 걸로 보이는데... 혹시 틀린 거 있으면 말씀해주세요 ㅠㅠ spring: datasource: url: jdbc:h2:tcp://localhost/~/datajpa username: sa password: driver-class-name: org.h2.Driver jpa: hibernate: ddl-auto: create properties: hibernate: show_sql: true format_sql: true logging.level: org.hibernate.SQL: debug # org.hibernate.type: trace import jakarta.persistence.Entity; import jakarta.persistence.GeneratedValue; import jakarta.persistence.Id; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; @Entity @Getter @Setter @NoArgsConstructor @AllArgsConstructor public class Member { @Id @GeneratedValue private Long id; private String username; public Member(String username) { this.username = username; } } 혹시 몰라서 Member 엔티티 코드도 남깁니다!! 추가적으로 h2 데이터베이스에는 잘 접속하는 것 같아요 ㅠㅠ

  • java
  • spring
  • spring-boot
  • jpa
댓글 2 좋아요 0 조회수 169

selenium 업그레이드됨... 문법도 바뀜

미해결

파이썬 무료 강의 (활용편3) - 웹 스크래핑 (5시간)

기존 강의에서 elem = browser.find_element_by_id("query") 였는데 이제는 elem = browser.find_element("id","query") 이렇게 작성해야함 ㅜㅜ 계속 AttributeError 떠서 미치는줄 알았는데 구글링해서 찾다보니 나와서 써보니 문법이 바뀐거였음

  • python
  • 웹-크롤링
  • selenium
  • 웹-스크래핑
우성 댓글 1 좋아요 1 조회수 325

@JsonIgnore가 실무에서 쓰이는 경우가 있나요?

미해결

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요. 주문 조회 ( /api/v1/simple-orders 와 /api/v1/orders ) api 학습하면서 궁금한 점이 생겼습니다. 강의를 들으며 postman으로 request 했을 때, v1 코드에서 쿼리를 날릴 시 양방향 연관관계에서 문제가 발생할 수 있다는 것을 배웠습니다. 예를 들어, order list를 return했을 때, member 와 delivery 에 대한 프록시 객체로부터 필드를 조회해서 영속 상태의 객체를 반환하도록 구성한다면 v1에서는 @JsonIgnore 로 양방향 연관관계에 대한 처리 코드를 작성해주어야만 이 문제가 해결되는 것으로 이해했습니다. 그런데 Dto를 만들어 반환하게 되면 @JsonIgnore 을 없애도 이러한 문제가 사라지니, 사실상 @JsonIgnore 을 실무에서 사용하는 일은 없지 않을까라는 생각이 들었습니다. 또한, 실무에서 양방향 매핑보다는 단방향 매핑을 선호하는 것으로 알고 있어 질문드립니다. 실무에서 이런 코드( @JsonIgnore )를 작성할 일이 있다면, 어떠한 경우인 지 예시가 있을까요?

  • java
  • spring
  • spring-boot
  • jpa
haisley 댓글 1 좋아요 0 조회수 143

기존 코드 mvvm으로 역할 분리하는 기준이 궁금합니다

해결됨

Flutter 응용 - 공공 API를 활용한 앱 만들기 (MVVM 패턴)

강의를 통해 학습에 정말 많은 도움을 받고 있습니다. 감사합니다. 처음부터 구조를 잘 잡아서 설계하면 좋겠지만, 역할이 제대로 명시되지 않은 함수들을 각각 repository, service, viewmodel로 역할을 명시해주는 것도 난이도가 있으면서 함수들의 역할을 더 명확히 파악하는 데 도움이 될 것 같아서 파일 하나에 함수를 몰아 놓고 분리해보고 있습니다. 혹시 repository, service, viewmodel로 함수를 분리해서 작성할 때, 명확한 기준이 존재할까요?? 제가 학습한 바로는 repository는 데이터베이스/서버 통신 또는 데이터 불러오기 관련, service는 repository를 활용한 비즈니스 로직, Viewmodel은 service를 활용한 View와의 상호작용이라고 알고 있습니다. 제가 아직 비즈니스 로직을 명확하게 구분하기기 어렵습니다.. 에를 들면 파일 탐색기 실행 > 파일 경로 받기 > 파일 디코딩 > JSON(map)형식 변환 > 데이터 필터링 의 과정이 있다고 가정하면, 여기서 어디까지의 함수를 어디로 분리할 지 감이 오지 않습니다. 명확하게 구분할 수 있는 기준이나 팁이 존재한다면 알고 싶습니다!

  • flutter
  • mvvm
  • repository
  • service
  • viewmodel
민태호 댓글 2 좋아요 0 조회수 243

dependencies 셋팅 부분에서 에러가 발생하네요

미해결

윤재성의 만들면서 배우는 Spring MVC 5

안녕하세요 강 프로젝트 세팅부분에서 javax.servlet groupId dependencies 에서 에러가 발생하는데 <properties> <javax.servlet-version>4.0.1</javax.servlet-version> <javax.servlet.jsp-version>2.3.3</javax.servlet.jsp-version> <javax.servlet.jsp.jstl-version>1.2</javax.servlet.jsp.jstl-version> <org.springframework-version>5.2.2.RELEASE</org.springframework-version> </properties> <!-- 라이브러리 셋팅 --> <dependencies> <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>${javax.servlet-version}</version> <scope>provided</scope> </dependency> <!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api --> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>javax.servlet.jsp-api</artifactId> <version>${javax.servlet.jsp-version}</version> <scope>provided</scope> </dependency> 에러 발생 Missing artifact javax.servlet:javax.servlet-api:jar:1.2 입니다 .

  • java
  • spring
  • mvc
  • xml
wjlee1 댓글 1 좋아요 0 조회수 354

배열 for문 할때 질문입니다

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. package array; public class EnhancedFor1 { public static void main(String[] args) { int[] numbers = {1, 2, 3, 4, 5}; //일반 for문 for (int i = 0; i < numbers.length; i++){ int number = numbers[i]; System.out.println(number); } 이 부분에서 int number = numbers[i]; 부분을 없애고 밑에 줄을 System.out.println(numbers[i]); 로 바꿔도 결과값이 똑같이 나오던데 그렇게 하면 안되는 건가요? 배열의 요소에서 값을 꺼내서 number라는 변수에 항상 담아두게 코드를 짜야하는건지 궁금합니다.

  • java
  • 객체지향
강민서 댓글 2 좋아요 0 조회수 157

404에러가 계속 뜹니다.

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/ 아니오 ) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 404에러가 뜹니다. 폴더 경로라랑 빌드 그래들 등등 보여드리겠습니다.

  • java
  • spring
  • mvc
  • spring-boot
sh hhyeogi365 댓글 2 좋아요 0 조회수 238

트윗 나열해보기 강좌중 users 콜렉션 세팅 문제

미해결

[2025 리뉴얼]플러터플로우로 코딩 없이 한달 안에 앱 만들기

트윗 나열해보기 강좌중 2:36초 post콜렉션을 템플릿으로 생성후, 자동으로 생성된 users콜렉션을 선택해서 다시 템플릿을 선택하는 부분이 있습니다. 실제로 해보면 users가 자동으로 생기긴 하는데 선택해도 users 템플릿을 선택하는 곳이나 컬럼을 수정하는 곳이 나오지 않습니다. 정확히는 users를 선택해도 아무런 변화가 없습니다. 엣지와 크롬에서 동일 합니다. 이거 어떻게 해결해야 할까요 ㅠㅠ

  • flutter
  • firebase
  • no-code
  • flutterflow
만만한강아지 댓글 2 좋아요 0 조회수 175

book_scraper.py 에서 import get_secret 관련 질문

미해결

파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI, async, await)

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. from app.config import NAVER_API_ID, NAVER_API_SECRET 가 아닌 from app.config import get_secret 로 import 한 이유가 궁금합니다. 클래스 내에 NAVER_API_ID = get_secret("NAVER_API_ID") NAVER_API_SECRET = get_secret("NAVER_API_SECRET") 로 변수 선언한 이유가 있을까요? get_secret은 config 파일에서 이미 수행해 NAVER_API_ID와 NAVER_API_SECRET을 변수로 가지고 있으니, 위처럼 클래스 내에 변수롤 또 선언하면 config 파일에서 get_secret 함수를 이용해 변수를 만든 이유가 없다고 생각이 들었습니다. from app.config import NAVER_API_ID, NAVER_API_SECRET config 파일에서 NAVER_API_ID와 NAVER_API_SECRET을 import해서 바로 사용하면 어떤 차이가 있나요?

  • python
  • 동시성
  • FastAPI
종마 댓글 1 좋아요 0 조회수 128

코틀린 val 질문

미해결

자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)

클래스 속성에 val로 정의할 경우 속성 값을 외부로 반환할 때 getter 메소드를 만들어서 반환하시나요? 아니면 속성 그대로 인스턴스.속성 으로 바로 반환하시나요?? 만약에 후자일 경우 캡슐화 위반이 아닌지 생각이 듭니다...

  • java
  • kotlin
  • 객체지향
terry9611 댓글 2 좋아요 0 조회수 198

인기 태그

인프런 TOP Writers

주간 인기글