django.core.exceptions.FieldError: Неизвестные поля (ы) (y, b, d, o) - PullRequest
3 голосов
/ 12 ноября 2011

У меня есть модель, где у меня есть следующая архитектура

  • Есть Почтовая модель
  • И для данного поста есть модель ответа (как в переполнении стека)

Поскольку есть некоторые поля, которые я не хочу, чтобы пользователь заполнял, я создал специальную форму для обеих моделей. Пользовательский класс формы работает абсолютно для первой модели, то есть для Post Model, но я получаю это странно для модели PostAns. Если я удаляю класс PostAnsForm , то он работает нормально.

class PostAns(models.Model):
    created = models.DateTimeField(auto_now_add=True)
    creator = models.ForeignKey(User, blank=True, null=True)
    post = models.ForeignKey(Post)
    body = models.TextField()
    like_count = models.IntegerField(default=0,blank=True,null=True)
    # If we use markdown can remove this if not
    body_html = models.TextField(blank=True)

class PostAnsForm(ModelForm):

    class Meta:
        model = PostAns
        fields = ('body')

Я не нашел подобной ошибки в сети.

1 Ответ

10 голосов
/ 12 ноября 2011

атрибут fields ожидает список или кортеж.он находит строку, которая также является итеративной, но итерация по строке дает каждый символ.

try

fields = ('body', )

это довольно распространенный случай, и точная ошибка зависит от вашей строкитак сложно гуглить.подсказка - это список полей (возможно, вы меняли порядок символов?)

Unknown fields b, o, d, y

обратите внимание на то, что все они представляют собой один символ, и из своего кода вычеркните, как выглядит строковое значение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...