首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何读取模型字段的db_column名称

如何读取模型字段的db_column名称
EN

Stack Overflow用户
提问于 2011-03-09 08:44:37
回答 2查看 14.3K关注 0票数 12

我需要知道各种模型字段的db_column名称。在一些模型上,名称由"db_column='foo'“显式设置,但大多数模型/字段都具有Django自动生成的名称。

如何从模型实例中检索column_name for all字段?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-09 10:09:39

有一个无文档的_meta API,在整个Django中被广泛用于内省模型。它将您的模型选项存储在该类型上,并提供了大约20多个方法和属性来检查模型及其字段。您可以使用它获取所有模型字段,然后从字段中获取列名,因为它们指定了所有业务逻辑:

代码语言:javascript
运行
复制
for field in Model._meta.fields:
    field.get_attname_column()

这将返回一个元组,它将包含模型上的属性(字段)名称和DB列名。对于模型字段foo = models.IntegerField(db_column='bar'),这将返回('foo', 'bar')

票数 31
EN

Stack Overflow用户

发布于 2011-03-09 09:23:01

您可以使用原始SQL对数据库进行查询,并使用此问题的答案:

How to get field names when running plain sql query in django

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5243222

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档