Как использовать переменную в качестве имени таблицы в Django? - PullRequest
0 голосов
/ 26 октября 2010

Я бы хотел сделать следующее:

for table in table_list:
   'table'.samefield = newvalue

Ответы [ 2 ]

3 голосов
/ 26 октября 2010

Если вы знаете название приложения, в котором оно находится, тогда вы можете сделать

model = getattr(application_name.models, 'table')
model.somefield = newvalue

или просто

getattr(application_name.models, 'table').somefield = newvalue

если вы хотите получить к нему доступ только один раз (хотя это не имеет никакого смысла).

0 голосов
/ 26 октября 2010

Для этого вы можете использовать инфраструктуру типов контента django. Посмотрите эту ссылку:

http://docs.djangoproject.com/en/dev/ref/contrib/contenttypes/

...