Как создать динамические поля в классе App Engine App Engine?
-
08-10-2019 - |
Вопрос
У меня есть класс DB Excedo называется виджетом.
Я прохожу в json string и преобразуя ее в Dict, а затем добавляя его в хранилище данных.
Мой вопрос заключается в том, как я могу зацикливаться через мою Dict для создания динамических полей.
widget = Widget.get_by_key_name(key_name)
widget.name = self.request.get('wname')
fields = simplejson.loads(self.request.get('wcontents'))
for k,v in fields.iteritems():
widget.k = v
Это отображает «k» в качестве имени моего поля, как противодействует значению k в Dict.
Решение
Синтаксис widget.k
Ссылки на атрибут k
на объекте widget
. Отказ К динамично Выберите, какой атрибут вы устанавливаете, используйте встроенный setattr
Метод:
setattr(widget, k, v)
Динамически устанавливает такой атрибут, как это создаст поле на этом конкретном объекте.
Другие советы
Пытаться:
for k, v in fields.items()
Не связан с StackOverflow