Значение исключения: у объекта 'str' нет атрибута '__name__' CreateView - PullRequest
0 голосов
/ 03 мая 2020

Не получается создать экземпляр класса изза ошибки: Значение исключения:
У объекта 'str' нет атрибута ' name ' До того, как оно перестало работать. Не могу понять в чем проблема. Заранее спасибр view.py

class FoodCreateView(CreateView):
    fields = ('food_name','active_b','food_type_r','boxing_r','profile_pic_i','show_comments_b','User_Create_r')
    queryset = Food.objects.all()
    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        if self.request.user.is_authenticated:
            context['test'] = self.request.user.id
        else:
            pass
        return context

url.py

    path('food/create/',views.FoodCreateView.as_view(model="Food"),name='create'),

Model.py

class Food(models.Model):
    food_name       = models.CharField(max_length = 25,
                                    verbose_name="Наименование еды")
    date_d          = models.DateTimeField(auto_now=True,
                                            verbose_name="Время создания")
    desc_c          = models.CharField(max_length = 256,
                                        verbose_name="Описание блюда")
    active_b        = models.BooleanField(verbose_name="Активно?")
    food_type_r     = models.ForeignKey(Food_Type_ref,
                                        models.DO_NOTHING,
                                        verbose_name="Тип Блюда",
                                        related_name='Food_type')
    boxing_r     = models.ForeignKey(Boxing_ref,
                                        models.DO_NOTHING,
                                        verbose_name="Упаковка")
    moderated_b     = models.BooleanField(verbose_name="Прошел модерацию",
                                        default=False)
    User_Create_r   = models.ForeignKey(User,
                                        models.DO_NOTHING,
                                        verbose_name="Автор")
    views_n         = models.SmallIntegerField(verbose_name="Просморы",
                                                default=0)
    profile_pic_i   = models.ImageField(upload_to='profile_pics',
                                            blank=True,
                                            verbose_name="Фото еды")
    show_comments_b = models.BooleanField(verbose_name="Отображать комментарии")
    def __str__(self):
        return self.food_name
    def get_absolute_url(self):
        return reverse('dish_app:detail',kwargs = {'pk':self.pk})
...