Как работать с Foriegnkey в ModelForm и `Generi c createiVew` в Django - PullRequest
0 голосов
/ 26 января 2020

Я всегда использовал нормальные Django представления в течение многих лет, я впервые пытаюсь использовать Django Generic Views и сталкиваюсь с этой странной проблемой. По какой-то причине все поля работают отлично, но поле ForiegnKey не даже показывая, вот мой код:

models.py

class Category(models.Model):
    #  Fields
    name = models.CharField(max_length=500)

    class Meta:
        pass

    def __str__(self):
        return str(self.name)

    def get_absolute_url(self):
        return reverse("Point_of_sale_Category_detail", args=(self.pk,))

    def get_update_url(self):
        return reverse("Point_of_sale_Category_update", args=(self.pk,))


class Product(models.Model):
    #  Relationships
    category = models.ForeignKey(Category, on_delete=models.CASCADE, related_name='product_category')

    #  Fields
    name = models.CharField(max_length=500)
    sell_price = models.DecimalField(max_digits=8, decimal_places=4)

    class Meta:
        pass

    def __str__(self):
        return str(self.name)

    def get_absolute_url(self):
        return reverse("Point_of_sale_Product_detail", args=(self.pk,))

    def get_update_url(self):
        return reverse("Point_of_sale_Product_update", args=(self.pk,))

И мой forms.py :

class ProductForm(forms.ModelForm):
    class Meta:
        model = models.Product
        fields = [
            "name",
            "sell_price",
            "category",
        ]

my views.py

class ProductCreateView(generic.CreateView):
    model = models.Product
    form_class = forms.ProductForm

И, наконец, вот я использую его в моих HTML:

<form method="post">
{% csrf_token %}
{{form.as_p}}
<button type="submit">
</form>

Поля отображаются нормально, но не Category Поле

ОБНОВЛЕНИЕ

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

enter image description here

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

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