2

안녕하세요 저는 Udacity에서 웹 개발을하고 Python으로 Google 데이터 저장소를 실험하고 Blog라는 간단한 엔티티를 만들었습니다.Google 데이터 스토어 ID는 정수 대신 긴 유니 코드입니다.

localhost : admin 포트를 확인했는데 모든 ID는 '5249205949956096'과 같았습니다. 다른 모든 사람과 마찬가지로 '1', '2', '3'이어야합니다. 이 코드는 텍스트 편집기 또는 다른 코드와 함께 설정해야합니까?

class Blog(db.Model): 
subject = db.StringProperty(required = True) 
content = db.TextProperty(required =True) 
created = db.DateTimeProperty(auto_now_add = True) 

class NewPostHandler(Handler): 
def get(self): 
    self.render("newpost.html") 

def post(self): 

    subject = self.request.get("subject") 
    content = self.request.get("content") 

    if subject and content: 
     newblog=Blog(subject=subject,content=content) 
     newblog_key = newblog.put() 
+0

실제로는 문자열이 아니라 Long입니다. –

답변

3

ids에 대한 기본 할당 전략을 분산 (http://googlecloudplatform.blogspot.com/2013/05/update-on-datastore-auto-ids.html)으로 변경했습니다. 이 같은 dev_appserver이를 재정의 할 수 dev에 서버 페이지의 "자동 ID 할당 정책을 지정"섹션에서

더 순차적

dev_appserver.py --auto_id_policy = https://cloud.google.com/appengine/docs/python/tools/devserver합니다.

@dyoo 상태와 마찬가지로 걱정할 필요는 없지만 로컬 테스트 중에 쉽게 눈알 조회를 할 수 있습니다.

+0

오, 고마워요 Bardia !!!! 이것이 제가 찾고있는 것입니다! –

+0

오버라이드를 요청할 수 있지만 성능 최적화가 취소됩니다. 순차적 식별자에 대한 필요성이 강하면 그런 식으로 의지해야하지만, 그 균형을 이해하는 데 시간이 필요합니다. –

1

App Engine에는 식별자에 대한 자체 할당 전략이 있습니다. 너는 아마 괜찮을거야. ID에 대해 more control에 대한 API가 있지만 요구 사항이 비정상적인 경우가 아니라면 걱정할 필요가 없습니다.