从Django模型字段名称获取缩写列名称

时间:2012-11-07 19:41:03

标签: python django django-models

我不得不为我的查询编写一个自定义where子句。我需要从模型中的字段中获取Oracle表中显示的列名。我循环遍历MyModel._meta.fields中的模型字段并获取name属性。在每种情况下,除了一个模型字段的名称是列的名称。在例外情况下,该字段的字段名称太长,因此Django的syncdb为该列提供了一个缩写名称。如何获取列名?

我的字段名称:political_contributions_description

列名:political_contributions_de0ec3

我已尝试过field.get_attname_column(),如

for field in MyModel._meta.fields:
    field.get_attname_column()

但是这只是为我的领域提供了以下元组:

('political_contributions_description','political_contributions_description')

顺便说一句,超过30个字符的Oracle专栏将缩写。

1 个答案:

答案 0 :(得分:1)

...试

MyModel._meta.get_field('username').column