CreateView выдает «DoesNotExist», когда экземпляр не предоставлен - PullRequest
0 голосов
/ 04 января 2012

Я получаю ошибку «DoesNotExist» со следующей настройкой - я пытался отладить некоторое время и просто не могу понять это.

class Video(models.Model):
    name = models.CharField(max_length=100)
    type = models.CharField(max_length=100)
    owner =  models.ForeignKey(User, related_name='videos')
    ...
    #Related m2m fields
    ....

class VideoForm(modelForm):
    class Meta:
        model = Video
        fields = ('name', 'type')

class VideoCreate(CreateView):
    template_name = 'video_form.html'
    form_class = VideoForm
    model = Video

Когда я делаю это и отправляю данные для 'name' и 'type' - я получаю ошибку "DoesNotExist".Кажется, что он отлично работает с UpdateView - или когда передается «экземпляр» для инициации формы.

Это точное местоположение, где возникает ошибка: /usr/lib/pymodules/python2.7/django/db/models/fields/related.py в get , строка 301

Кто-нибудь знает, что может происходить?

Спасибо

Ответы [ 2 ]

1 голос
/ 04 января 2012

Поскольку вы еще не опубликовали свой полный отчет, я предполагаю, что ваш владелец FK не является обязательным, и вы не указываете его в форме модели.

Вам необходимо опубликовать полный отчет.

0 голосов
/ 04 января 2012

Я думаю, это должен быть класс VideoForm(ModelForm) вместо VideoForm(modelForm).

Если вы не собираетесь использовать внешний ключ в форме, используйте exclude = ('owner')

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