繁体   English   中英

在 Django Model 字段中使用选项时出现字段错误

[英]Field Error When Using choices in a Django Model field

在将 model 字段之一添加到 select 列表中的一个选项后,我收到一个字段错误。 可能是什么原因和解决方法

错误:

  File "/home/chrisdev/code/work/cw-full/lib/python3.8/site-packages/django/db/models/sql/query.py", line 1481, in names_to_path
    raise FieldError("Cannot resolve keyword '%s' into field. "
django.core.exceptions.FieldError: Cannot resolve keyword 'status' into field. Choices are: description, id, image, name, slug

MODEL:

from django.db import models
from django.contrib.auth.models import User

# News Model
class News(models.Model):
    DRAFT = 'DRT'
    PUBLISHED = 'PUB'
    article_publication_choices = [
        (DRAFT, 'Draft'),
        (PUBLISHED, 'Published'),
    ]
    title = models.CharField('News Title', max_length=200, unique=True, help_text='News Heading')
    slug = models.SlugField(max_length=200, unique=True)
    author = models.ForeignKey(User, on_delete= models.SET_NULL, related_name='news', null=True)
    updated_on = models.DateTimeField(auto_now= True)
    news_summary = models.CharField('News Summary', max_length=200)
    content = models.TextField('News Content')
    created_on = models.DateTimeField(auto_now_add=True)
    article_publication = models.CharField(max_length=2,
        choices=article_publication_choices,
        default=PUBLISHED,
    )

    class Meta:
        verbose_name = 'News Updates'
        verbose_name_plural = verbose_name
        ordering = ['-created_on']

    def __str__(self):
        return self.title

我通过在使用来自其他模型的关系的字段中添加 related_name='+' 找到了解决方案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM