홈>
@classmethod
내에서 속성 값에 액세스하는 방법
? 예를 들면 다음과 같습니다.
class Account(polymodel.PolyModel):
someprop = ndb.StringProperty(required=True)
@classmethod
def get_or_create_someprop(cls):
if not cls.someprop:
# create someprop
else:
return cls.someprop
위의 예제 코드에서
someprop
를 만들려고합니다.
존재하지 않는 경우, 또는 이미 존재하는 경우 반환하십시오. 위의 코드가 이것을 달성한다고 가정했습니다. 그러나 내가해야 할 첫 번째 단계는
someprop
에 액세스하는 것입니다
classmethod 내에서 값.
cls.someprop
사용
실제로
someprop
의 값을 반환하지 않습니다
그러나 대신
StringProperty('state')
를 반환합니다.
.
this
를 사용하려고했습니다
그리고
self
어느
undefined
입니다
.
그래서 클래스 메소드를 사용하여 엔터티의 속성 값에 액세스 할 수 있습니까? 그렇다면 어떻게해야합니까?
- 답변 # 1
관련 자료
- typescript - 계산 된 속성 메서드 내에서 계산 된 속성의 현재 값을 읽는 방법은 무엇입니까?
- runtime error - 유형의 널 포인터 내에서 멤버 액세스, C 프로그래밍은 회문입니다
- javascript - 특정 날짜에 도달하면 MongoDB에서 속성 값을 자동으로 변경하는 방법
- 파이썬 사전의 인덱스 값 내에서 작업을 수행하는 방법
- javascript - animejs의 콜백 함수 내에서 Angular 구성 요소 속성/함수에 액세스
- python - 클래스의 속성 이해 (값 증가)
- python - openpyxlload_workbook을 사용하여 파일에 액세스하려고 할 때 "typeerror - value must be a sequence"
- python - 중첩 된 사전 액세스 및 값 반환
- python - 장고 템플릿의 관련 테이블 필드 값에 액세스
- 웹앱 컨테이너가 동일한 Docker 내에서 mysql 컨테이너에 액세스하는 이유가 시간 초과 오류를보고하는 이유
- javascript - colorpicker는 값을 속성으로 설정할 수 없습니다
- javascript - Promise for HTML 요소의 액세스 값
- Kotlin은 특정 클래스에서 설정되는 속성 값을 적용합니다
- bash - JSON 속성 값을 바꾸려면 sed 명령이 필요합니다
- javascript - 각도의 메서드에서 속성으로 값을 전달하는 방법
- javascript - 첫 번째 렌더링에서 null 오류의 속성 '값'을 읽을 수 없습니다
- Fetch API를 사용하여 PHP로 의 이름과 값 쌍에 액세스하는 방법은 무엇입니까?
- malloc - malloced struct 속성에 대한 두 번째 액세스로 인해 프로그램이 충돌합니다
- reactjs - useState 후크를 사용하여 FormDataConsumer 내에서 값을 설정하는 방법
- javascript - 컴포넌트에서 Vuex State의 객체 속성에 함수를 값으로 할당하는 방법은 무엇입니까?
관련 질문
- 데이터 저장소에서 (그룹 간) 항목을 읽을 때 TransactionFailedError (경합이 너무 많습니다…)
- IAP로 보호되는 경우 App Engine HTTP로 Cloud 스케줄러 작업을 실행하는 방법
- python - WAV 파일 이메일 첨부 파일을 디코딩하는 데 도움이 필요합니다
- python - google의 appengine을 배포 할 수 없습니다 - googleappengine 라이브러리를 설치할 수 없습니다 :modulenotfound ez_setup
- Python 스크립트없이 App Engine Python 37을 사용하여 정적 파일 제공
- 쓰기가 트랜잭션에 없을 때 Google App Engine 엔티티 그룹이 잠겨 있습니까?
- python - google app engine - attributeerror : 'verifiedhttpsconnection'객체에 '_tunnel_host'속성이 없습니다
- django - 서버 오류에 연결할 수 없습니다 Google App Engine 정적 파일 문제
- docker - 매번 긴 배포를 피하기 위해 앱 엔진에 패키지를 한 번 설치하는 방법이 있습니까?
- python - GQL DISTINCT 상위 쿼리가 지원되지 않습니까?
일반적으로 속성은 객체, 즉 클래스의 인스턴스 (클래스는 객체 생성기)에 속하기 때문에 클래스 메소드 에서이 작업을 수행 할 수 없습니다. 다시 말해 당신은
self
가 필요합니다 객체 및 해당 속성을 나타내는 인수입니다.특정 사례에서 클래스는 엔티티 모델이 아닌 엔티티 모델 (엔티티를 만들기위한 청사진)이며 엔티티 자체의 속성 만 참조 할 수 있습니다.
그러나 클래스 메소드를 선언하지 않으면 서 원하는 것을 달성 할 수 있어야한다. 그러면 객체/엔티티의 메소드가되고,이 경우 다음을 통해 엔티티의 속성을 참조 할 수있다 와이즈 비즈
self
대신 :cls
.하지만 속성에 0과 같은 값이 있거나 빈 문자열이 파이썬에 의해
self.someprop
로 해석되는 경우를 다루기 위해 검사를 좀 더 구체적으로 만들었습니다. 논리적 검사에서 :False
if self.someprop is None
대신 .if not self.someprop