Как мне проверить модели хранилища данных Appengine? - PullRequest
3 голосов
/ 28 мая 2010

Для динамического создания формы мне нужно найти типы свойств свойств модели во время выполнения.

appengine docs сообщает, что Model.properties () вернет словарь имен свойств и их типов классов. когда я использую этот метод в своем коде, возвращается только имя, а значение classtype всегда пусто.

1 Ответ

1 голос
/ 28 мая 2010

Model.kind()

Например, для такой модели:

class LargeTextList(db.Model):
    large_text_list = db.ListProperty(item_type=db.Text)

my_model_instance.kind() возвращает LargeTextList.


Редактировать (спасибо ОП за разъяснения):
Информация о недвижимости, которую вы ищете, есть, но вам нужно скрыться, чтобы увидеть ее, например, в вашем шаблоне:

<p>{{ my_model_instance.properties|escape }}</p>

Возвращает:

{'large_text_list': <google.appengine.ext.db.ListProperty object at 0x24b1790>}

Edit2:
Вы также можете позвонить properties() по самому классу:

my_model = LargeTextList

и в шаблоне, как и раньше (обязательно используйте фильтр escape):

<p>{{ model.properties|escape }}</p>
...