2010-03-15 2 views

답변

4

사용중인 API를 지정하지 않았습니다.

파이썬에서 그것은 like so : 그것은해야 자바에서는

db.delete(modelId) 

like (I이 테스트를하지 않은 경우) : 파이썬에서

PersistenceManager pm = PMF.get().getPersistenceManager(); 

MyModel entity = pm.getObjectById(MyModel.class, modelId); 
pm.deletePersistent(entity); 

pm.close(); 
+2

파이썬 예제는 잘못된 것입니다 - '키'는 예약 된 필드 이름, 그래서 속성으로 사용할 수 없습니다. 다른 속성에서 필터링하거나 MyModel.get을 사용하여 키로 가져와야합니다. 전자의 경우 db.delete (MyModel.all(). fetch (500))와 같은 배치 삭제는 훨씬 효율적입니다. –

+0

자바 예제에서는 JDO를 사용하여 엔티티 (또는 Google 토크의 종류)에서 단일 객체를 제거하는 방법을 보여줍니다. 실제로 엔티티를 제거하는 방법이 아니라 실제로 id (modelId)로 특정 객체를 가져온 다음 삭제합니다. 어쨌든 종류를 지우려면 그 안에있는 모든 데이터를 삭제해야합니다. – stivlo

3

당신은 키가 정말 간단 알고있는 경우 :

db.delete(key) 
+2

열쇠를 얻는 방법? –

0

엔드 포인트가 있다고 가정합니다.

Somethingendpoint endpoint = CloudEndpointUtils.updateBuilder(endpointBuilder).build(); 

: 그리고

class MyClass(ndb.Model): 
    myString = ndb.StringProperty(indexed=false) 

def deleteAllEntities(): 
    entities = MyClass.query() 
    for entity in entities: 
     entity.key.delete() 

가 인정 하듯이 대량 삭제 작업을 수행하는 더 나은 방법이있다 : 또한

endpoint.remove<ModelName>(long ID); 
관련 문제