正如Django: Get model from string?的答案所示,您需要app_name字符串或AppConfig对象来从model_name获取模型。 但是,您可以使用apps.get_app_configs()来迭代AppConfig示例,因此可以实现以下操作:
from django.apps import apps
for app_conf in apps.get_app_configs():
try:
foo_model = app_conf.get_model('foo')
break # stop as soon as it is found
except LookupError:
# no such model in this application
pass
2条答案
按热度按时间5gfr0r5j1#
正如Django: Get model from string?的答案所示,您需要
app_name
字符串或AppConfig
对象来从model_name
获取模型。但是,您可以使用
apps.get_app_configs()
来迭代AppConfig
示例,因此可以实现以下操作:请注意,此可迭代对象将包括
INSTALLED_APPS
中的基础django应用程序,如admin
,auth
,contenttypes
,sessions
,messages
和staticfiles
。idfiyjo82#
1.获取所有模型。
1.通过app name和model_name获取model。
1.模型也可以简单地得到。
另外,要知道model_name