python - 如何在 Django 中将字符串转换为调用模型的名称?
问题描述
视图.py
from .models import Banana, Mango
list = request.GET['fruit[]']
for x in list:
conn = x.objects.all()
print(conn.name)
在 html 文件中:我使用复选框选择“芒果”和“香蕉”,view.py 获取复选框的值。然后我想选择用户选择的模型。
当我运行此代码时,/search 'str' 对象出现 AttributeError 没有属性 'objects'。
在那段代码中,我想在我的 models.py 中返回对象模型的名称值
如何替换 List 中的字符串以在 django 中调用对象模型?
解决方案
如果必须从str
值加载模型,请使用django.apps.get_model()
helper
from django.apps import apps
Model = apps.get_model('app_name', 'model_name')
for element in Model.objects.all():
print(element)
推荐阅读
- ruby-on-rails - WriteXLSX gem 不打印日期格式正确打印为正常数字格式
- c# - 何时是在 Prism 中加载数据的合适时间
- python - 在Python中数据框中一列的特定字符之前提取值
- python - Django:一次更新多个字段
- jenkins - 如何更改詹金斯工作区中的@和@tmp目录创建
- node.js - 取消订阅仅在必要时发出一次的可观察计时器?
- node.js - 获取 q-item-label 文本
- python - 在 Django 中使用 set 而不是 list 并使用列表中的每个 id 检查 id
- jenkins - Jenkins / 每次更新我的 100 个存储库中的一个时如何构建 1 个存储库
- jquery - 脚本密码检查问题