我有一个模型,需要有一个名为complex
的字段,另一个名为type
。这些都是python保留名称。根据PEP 8,我应该分别命名它们为complex_
和type_
,但是django不允许我使用以尾部下划线命名的字段。什么是处理这个问题的正确方法?命名为python保留名称的django模型字段的正确用法是什么?
5
A
回答
4
这些例子没有问题。只需使用complex
和type
。你只是在一个非常有限的范围内(类定义本身)。在那之后,你会使用点符号(self.type
)来访问它们,所以没有歧义:
Python 2.6.2 (release26-maint, Apr 19 2009, 01:58:18)
[GCC 4.3.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> class Foo(object):
... type = 'abc'
...
>>> f = Foo()
>>> f.type
'abc'
>>> class Bar(object):
... complex = 123+4j
...
>>> bar = Bar()
>>> bar.complex
(123+4j)
>>>
1
你真的想使用db_column="complex"
的参数,并调用你的领域别的东西吗?
相关问题
- 1. Laravel - 使用保留字命名模型
- 2. Django模型:为什么名字冲突?
- 3. Django使模型字段名称链接
- 4. Django模型字段名称翻译
- 5. ActiveRecord模型的保留名称
- 6. 在Django模型中将字段命名为'id'是否安全?
- 7. OOP命名法:在好奇的循环模板模式中完整类型名称的名称是什么?
- 8. 我该如何使用不同于模型字段名称的字段名称来创建Django模型表单?
- 9. 确保用户名不是保留字的最佳方式是什么?
- 10. 什么是PowerShell 3.0中[命令]的正确名称?
- 11. 将Django模型类名变为字段
- 12. 重命名为保留字的列
- 13. C#命名空间的正确用法是什么?
- 14. 重命名一个heroku应用的正确方法是什么?
- 15. 使用保留字TimeStamp作为字段名称(Firebird 2.5)
- 16. 为什么Django将2命名为项目名称?
- 17. 创建名称为“import”的模型是否在rails 3中保留字?
- 18. 什么是SQL命令返回表的字段名称?
- 19. 为Django模型创建一个长度为5个字符的独特字段的正确方法是什么?
- 20. 这种节点模块的正确名称是什么?
- 21. PowerShell模块中正确的函数名称约定是什么?
- 22. 使用Django/South重命名模型的最简单方法是什么?
- 23. 如何引用LINQ中使用保留字命名的字段?
- 24. 在Rails模型中重命名字段名称
- 25. Django - 在模型中动态创建字段名称(字段不保存)
- 26. 为什么为django模型类命名参数
- 27. Django字段名称冲突保存
- 28. 什么是重命名你的xaml文件的正确方法?
- 29. CakePHP模型名称使用PHP保留字
从技术上说,你给的例子并不保留字。他们是内置的。保留字(如print或lambda)会导致实际问题。 – jcdyer 2009-09-18 18:23:41