在django开发中,使用django form时提示错误:@H_404_1@
File "D:\software\python3.6\lib\site-packages\django\forms\models.py", line 256, in __new__ apply_limit_choices_to=False, File "D:\software\python3.6\lib\site-packages\django\forms\models.py", line 149, in fields_for_model f.name, model.__name__) django.core.exceptions.FieldError: 'pub_date' cannot be specified for Article model form as it is a non-editable fiel
model.py@H_404_1@
class Article(TimeModel): title = models.CharField(max_length=150, verbose_name='文档标题') writer = models.CharField(max_length=20, verbose_name='作者') user = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name='创建人') category = models.ForeignKey(Category, db_index=True, verbose_name='分类') arc_type = models.SmallIntegerField(default=0, choices=TYPE, verbose_name='文章类型') sort_rank = models.SmallIntegerField(default=0, verbose_name='文档排序') status = models.SmallIntegerField(default=STATUS_norMAL, choices=STATUS_ITEMS, verbose_name='文章状态') pub_date = models.DateTimeField(auto_Now_add=True, verbose_name='发布时间')
经过阅读下面文章,发现如果DateTimeField设置了auto_Now_add=True导致,即使设置了editable=True,也是默认不支持修改。 @H_404_1@
注意:@H_404_1@
选项auto_Now_add,auto_Now和default互相排斥。这些选项的任何组合都将导致错误。@H_404_1@
当前实现,设置auto_Now或auto_Now_add以 True会导致该领域拥有editable=False和blank=True 设置。@H_404_1@
https://groups.google.com/forum/#!topic/django-users/74h8uPPiVoQ@H_404_1@
https://docs.djangoproject.com/zh-hans/2.2/ref/models/fields/#django.db.models.DateField.auto_now_add@H_404_1@
class Article(TimeModel): title = models.CharField(max_length=150, verbose_name='文章状态') pub_date = models.DateTimeField(verbose_name='发布时间')
@H_404_1@
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。