문제

App Engine 데이터베이스에 게시하는 데이터가있는 테이블 뷰가 있습니다. 테이블에서 항목을 삭제할 때마다 App Engine 데이터베이스에서 항목을 delelte로 만들고 싶습니다. 삭제할 항목을 어떻게 알 수 있습니까?

나는 이것을 생각하고 있었다 :

GAE 스토어에 저장하는 모든 품목에 대해 iPhone 고유 한 장치 ID가있는 모델을 참조합니다. GAE 스토어에 저장하는 모든 품목에 대해 iPhone DB & App Engine DB 용 UUID를 삽입합니다.

그래서 내 쿼리는 다음과 같은 것입니다.

del item where unique device id = ####
and item UUID = ####

App Engine에 로그인하고 싶지 않기 때문에 고유 한 장치 ID를 사용하는 이유입니다.

내 유일한 관심사는 성능입니다. GAE는 장치 ID와 UUID를 조회해야합니다. 이것이 문제가 될지 모르겠습니다.

최상의 솔루션은 DB.key ()로 삭제할 수 있다면, 데이터를 GAE에 게시 할 때 어떤 키를 생성했는지 모르기 때문에 어떻게 해야하는지 모르겠습니다.

누구든지 나에게 조언을 줄 수 있습니까?

도움이 되었습니까?

해결책

당신이 제안한 접근법은 합리적입니다. UUID를 키 이름으로 지정하면 직접 삭제할 수 있습니다. 키 이름을 가진 엔티티를 만들려면 다음을 수행하십시오.

MyEntity(key_name=a_string, ...)

키 이름으로 엔티티를 삭제하려면 (먼저 가져 오지 않고) :

db.delete(db.Key.from_path("MyEntity", a_string))

UUID와 장치 ID를 모두 가질 필요가 없습니다. UUID는 모든 장치에서 고유성을 보장하기에 충분합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top