Заполнить объект из запроса в GAE - PullRequest
1 голос
/ 13 ноября 2011

Я знаю, что могу использовать формы django, но я ищу нативный (gae api) способ наполнения объекта данными запроса.

Примерно так:

from google.appengine.ext import db

class MyModel(db.Model)
    prop1 = db.StringProperty()
    prop2 = db.StringProperty()

и в обработчике запросов

class Page(webapp.RequestHandler):

    def post(self):
        mymodel = MyModel(self.request)

заранее спасибо

Ответы [ 2 ]

0 голосов
/ 14 ноября 2011

Что вы обычно ищете, так это библиотека форм с интеграцией хранилища данных.Мы использовали его в среде выполнения 2.5, но он устарел для версии 2.7 (и не предоставляется по умолчанию), поскольку имеет ряд проблем.Главным среди них является то, что вы редко хотите, чтобы ваша сущность содержала только то, что отправил пользователь, и обычно хотите указать некоторые значения самостоятельно.Делать это с большинством библиотек форм довольно сложно, особенно если вы хотите преобразовать или иным образом изменить предоставленное пользователем поле.

Как бы скучно это не звучало, я бы предложил использовать стандартную библиотеку форм, например WTForms для обработки и очистки вашего ввода, а также для ручного создания объектов из обработанных данных.

0 голосов
/ 14 ноября 2011

Вы можете попробовать этот способ, который работает для меня:

mymodel = MyModel(prop1=self.request.get('prop1'))

если есть форма с полем наподобие следующего

<input type="text" name="prop1"  />

Я надеюсь, что это работает для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...