【发布时间】:2010-12-22 04:50:09
【问题描述】:
假设我有一个类似这样的 Django 类:
class Person(models.Model):
name = models.CharField(max_length=50)
# ...
如何以编程方式获取name 字段的max_length 值?
【问题讨论】:
标签: python django django-models oop
假设我有一个类似这样的 Django 类:
class Person(models.Model):
name = models.CharField(max_length=50)
# ...
如何以编程方式获取name 字段的max_length 值?
【问题讨论】:
标签: python django django-models oop
Person._meta.get_field('name').max_length 会给你这个值。 但必须使用_meta 表明这是您在正常使用中不应该做的事情。
编辑:正如 Carl 指出的那样,这个命名具有误导性,使用它似乎完全可以接受:http://www.b-list.org/weblog/2007/nov/04/working-models/
【讨论】:
问题是关于模型的,但对于试图对表单做同样的事情的人(这就是我在这个线程中结束的方式),我认为这种方法非常简单明了:
1. 在模板中:
{{form.name.field.max_length}}
2.在python代码中(例如在视图中)
form.name.field.max_length
【讨论】: