django - 如何通过详细名称或列名称访问 Django 模型中的字段名称
问题描述
我有模型的详细名称或列名称,我想获得相应的字段名称。我可以使用 _meta... 访问所有字段名称,但我只想根据详细名称访问特定字段名称。
我想插入详细名称或列名并返回字段名称。我发现的所有示例都只能在 Model._meta.get_field('fieldname') 中输入字段名称,而不是详细名称来获取字段名称。
res = Model._meta.get_field('test_field').verbose_name
res returns 'Test Field'
res = Model._meta.get_field('test_field').name
res returns 'test_field'
如果我输入 ex 的详细名称:
res = Model._meta.get_field('Test Field').name
我收到一个错误raise FieldDoesNotExist KeyError" 'Test Field'
我希望输出是字段名称“test_field”
解决方案
我同意威廉的观点,即可靠性和确定性行为存在问题,但这样的事情会起作用:
{field.verbose_name: field for field in model._meta.get_fields()}['Test Field']
推荐阅读
- r - 鼠标中的错误:pool():不再适用于 censReg/tobit(“此列表无法识别浏览方法”)
- swift - 隐藏的导航栏和更改的应用程序流程 - 迅速
- java - recyclerview根据item数执行次数时Android bundle值为null
- mongodb - 基于时间的数据的MongoDB索引策略
- r - 计算R中多列的行数
- c# - PDF-为什么有时单词的宽度是高度,而高度是宽度?
- python - 在 Python 中调用函数时,如何在不使用所需位置参数的情况下让用户输入值?
- javascript - 类似于 v-if 的自定义指令
- javascript - 使用过渡对背景图像进行灰度化
- java - Android手机中的响铃警报检测