Frage

Edit:. Leider habe ich nicht klären, es ist eine Google App Engine bezogene Frage

Nach diesem , kann ich db geben. put () eine Liste von Modellinstanzen und fragen sie zur Eingabe sie alle in den Datenspeicher. Allerdings habe ich nicht in der Lage gewesen, dies erfolgreich zu tun. Ich bin immer noch ein wenig neu mit Python, so gehen Sie einfach auf mich

list_of_models = []
for i in range(0, len(items) - 1):
    point = ModelName()

    ... put the model info here ...

    list_of_models.append(point)

db.put(list_of_models)

Könnte jemand darauf hinweisen, wohin ich gehe falsch?

War es hilfreich?

Lösung

Bitte definieren, was man unter „schief gehen“ - die winzigen Teile des Codes Sie zeigt sehr gut, Teil einer App sein könnte, die ganz „richtig“ ist. Betrachten wir z.

class Hello(db.Model):
  name = db.StringProperty()
  when = db.DateTimeProperty()

class MainHandler(webapp.RequestHandler):

  def get(self):
    self.response.out.write('Hello world!')
    one = Hello(name='Uno', when=datetime.datetime.now())
    two = Hello(name='Due', when=datetime.datetime.now())
    both = [one, two]
    db.put(both)

tut dies die beiden Entitäten einfügen richtig jedes Mal, wenn Methode erhält genannt wird, zum Beispiel wenn eine Beispielanwendung weiter mit:

def main():
  application = webapp.WSGIApplication([('/', MainHandler)],
                                       debug=True)
  wsgiref.handlers.CGIHandler().run(application)


if __name__ == '__main__':
  main()

, wie in einem typischen "Hallo Welt" App Engine App. Sie können mit dem Datenspeicher Betrachter der sdk Konsole oder natürlich die korrekte Addition beider Entitäten überprüfen, indem Sie einen anderen Handler hinzugefügt, die die Einheiten zurückkommt und zeigt ihnen, etc etc.

Also bitte klären!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top