إدراج متعددة نموذج الحالات باستخدام واحد db.وضع() في Google App Engine

StackOverflow https://stackoverflow.com/questions/803517

  •  03-07-2019
  •  | 
  •  

سؤال

تحرير: آسف لم يوضح هذا الأمر Google App Engine ذات السؤال.

وفقا هذا, أنا يمكن أن تعطي ديسيبل.وضع() قائمة نموذج الحالات ويطلب منه إدخال كل منهم في مخزن البيانات.ومع ذلك ، لم أتمكن من القيام بذلك بنجاح.أنا مازلت جديدا مع بيثون ، تقرفي لي

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)

يمكن لأي شخص أن نشير إلى أين أنا ذاهب خاطئ ؟

هل كانت مفيدة؟

المحلول

يرجى تحديد ماذا تعني بـ "خطأ" -- قطعة صغيرة من التعليمات البرمجية أنت تبين الممكن تماما أن تكون جزءا من هذا التطبيق هو تماما "الحق".ينظر على سبيل المثال:

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)

هذا لا إدراج اثنين من الكيانات بشكل صحيح في كل مرة الحصول على ما يسمى طريقة, على سبيل المثال إذا عينة التطبيق تواصل مع:

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


if __name__ == '__main__':
  main()

كما في نموذجي "مرحبا العالم" app engine التطبيق.يمكنك التحقق من الصحيح إضافة كلا الكيانين مع مخزن البيانات المشاهد من sdk وحدة التحكم ، أو بالطبع بإضافة آخر معالج الذي يحصل الكيانات مرة أخرى ويبين لهم, الخ الخ.

لذا يرجى توضيح!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top