获取模型的 ModelAdmin "list_display" 字段
Get model's ModelAdmin "list_display" fields
考虑一个名为 Person
的模型,它有四个字段:
- f_name
- l_name
- 多布
- something_else
我在管理网站上注册了这个模型。在 ModelAdmin class 中,我指定了 list_display` 字段,如下所示:
list_display = ["f_name", "l_name", "something_else"]
在 view.py
文件中,我使用 django.apps
中的 apps.get_model()
函数调用了模型对象。现在我有了这个模型对象,我想通过这个模型对象检索 list_display
字段。我该怎么做?
感谢您阅读这个可怕的问题和您的宝贵时间,非常感谢您提供的任何帮助。
编辑: 我还想知道如何根据查询集中的 list_display 字段将数据存储在列表中。例如:
represented_data = [['John', "Snow", "He died"], ["Arya", "Not Snow", "Killed the king"]]
这是一个从模型中获取 ModelAdmin 的示例
from django.contrib import admin
...
YourModel = apps.get_model('your_app_name','your_model')
your_list_display = admin.site._registry[YourModel].list_display
...
并且,要获取列表列表中的数据,您可以使用下一个代码:
represented_data = list(YourModel.objects.values_list(*your_list_display))
考虑一个名为 Person
的模型,它有四个字段:
- f_name
- l_name
- 多布
- something_else
我在管理网站上注册了这个模型。在 ModelAdmin class 中,我指定了 list_display` 字段,如下所示:
list_display = ["f_name", "l_name", "something_else"]
在 view.py
文件中,我使用 django.apps
中的 apps.get_model()
函数调用了模型对象。现在我有了这个模型对象,我想通过这个模型对象检索 list_display
字段。我该怎么做?
感谢您阅读这个可怕的问题和您的宝贵时间,非常感谢您提供的任何帮助。
编辑: 我还想知道如何根据查询集中的 list_display 字段将数据存储在列表中。例如:
represented_data = [['John', "Snow", "He died"], ["Arya", "Not Snow", "Killed the king"]]
这是一个从模型中获取 ModelAdmin 的示例
from django.contrib import admin
...
YourModel = apps.get_model('your_app_name','your_model')
your_list_display = admin.site._registry[YourModel].list_display
...
并且,要获取列表列表中的数据,您可以使用下一个代码:
represented_data = list(YourModel.objects.values_list(*your_list_display))