Czy Google App Engine ma odpowiednik Django: get_or_create()?Google App Engine: get_or_create()?
6
A
Odpowiedz
8
Nie ma pełnego odpowiednika, ale get_or_insert jest podobny. Główne różnice polegają na tym, że get_or_insert
akceptuje key_name
jako odnośnik do filtrów ustawionych w get_or_create
.
2
nie testowałem, ale powinno to być coś jak poniżej:
class BaseModel(db.Model):
@classmethod
def get_or_create(cls, parent=None, **kwargs):
def txn():
query = cls.all()
if parent:
query.ancestor(parent)
for kw in kwargs:
query.filter("%s =" % kw, kwargs[kw])
entity = query.get()
if entity:
created = False
else:
entity = cls(parent, **kwargs)
entity.put()
created = True
return (entity, created)
return db.run_in_transaction(txn)
class Person(BaseModel):
first_name = db.StringProperty()
last_name = db.StringProperty()
p, created = Person.get_or_create(first_name='Tom', last_name='Smith')
Powiązane problemy
- 1. Google App Engine
- 2. Google App Engine APNS
- 3. Google App Engine Geohashing
- 4. Google App Engine JDO 3
- 5. Google App Engine lub Django?
- 6. Google App Engine/_ah/zdrowie
- 7. OpenID dla Google App Engine
- 8. Google App Engine kopiowanie nadawcy
- 9. web.py w Google App Engine
- 10. Google App Engine Konwerter PDF
- 11. Google App Engine modifyThreadGroup problemem
- 12. Retrolambda w Google App Engine
- 13. Google App Engine: Kontyngent Błąd
- 14. Google App Engine dziwne opóźnienie
- 15. Google App Engine vs WebFaction
- 16. Google App Engine wiele regionów
- 17. Google Cloud Datastore vs Google App Engine
- 18. Google App Engine jako platforma produkcyjna
- 19. Logowanie do aplikacji Google App Engine
- 20. Usługi internetowe z Google App Engine
- 21. Google App Engine - Java lub Python?
- 22. Profilowanie java aplikacja Google App Engine
- 23. Błąd aplikacji Google App Engine 5
- 24. Warstwa zgodności aplikacji Google App Engine
- 25. Budowanie formularza Ajax w Google App Engine
- 26. Jak szybki jest Google App Engine?
- 27. Co _ znaczy w Google App Engine?
- 28. Google App Engine, JDO i equals/hashCode
- 29. Przesyłanie plików w Google App Engine
- 30. Użytkownik-agent w python Google App Engine