Как добавить несколько записей в хранилище данных Google App Engine - PullRequest
1 голос
/ 28 сентября 2011

Я пытаюсь обновить хранилище данных, загрузив отформатированный файл (содержит несколько строк).Каждая строка в файле создаст новую запись в хранилище данных Google App Engine.Я не уверен, как добавить несколько строк в хранилище данных в цикле for.Я попытался:

class Records(db.Model): 
      something = db.StringProperty()

.....

for line in lines   #lines is a file contains multiple lines
  record = Records(parent = PARENT_KEY)  
  record.something = line
  record.put()

Это не работает, и сообщение об ошибке BadValueError: Свойство что-то не многострочное.Я предполагаю, что это потому, что переменная 'record' ссылается на один и тот же экземпляр на каждой итерации.

Извините, если это глупый вопрос.Я довольно новичок в Python и Google App Engine.Заранее спасибо за ваш вклад!

Ответы [ 2 ]

4 голосов
/ 28 сентября 2011

for line in lines будет содержать символы новой строки в конце строк; перевод строки не допускается в StringProperty, если он не обозначен как многострочный.

попробуйте record.something = line.rstrip() удалить переводы строк.

0 голосов
/ 28 сентября 2011

Вы можете использовать массовый загрузчик для загрузки данных из файла в хранилище данных.http://code.google.com/appengine/docs/python/tools/uploadingdata.html

...