Django - выяснить, к какой модели относится переменная - PullRequest
2 голосов
/ 23 декабря 2011

Если я передам переменную в качестве аргумента, могу ли я узнать, к какой модели она принадлежит?

Например, если есть some_model, могу ли я узнать, относится ли она к модели Pizza или Toppings и т. Д.?

Ответы [ 3 ]

6 голосов
/ 23 декабря 2011

Проверка, имеет ли some_model тип, унаследованный от MyType

issubclass(type(some_model), MyType)

Проверить, является ли some_model экземпляром MyType

isinstance(some_model, MyType)
4 голосов
/ 23 декабря 2011

Передача объекта в type() сообщит вам тип объекта.

print type(some_model) 
0 голосов
/ 12 февраля 2016

Для операторов if это работает для меня

from app.models import SomeModel
model_var = SomeModel()
if type(model_var) == SomeModel:
    #Do stuff
    pass
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...