我正在创建一个网站,输入不同产品地点(餐厅、超市、药店)不同产品的价格
一个用户可以进入许多产品的地方 一个产品的地方可以有很多产品 一个商品店(比如餐馆)可以有很多菜单
所以我有三个模型: 1.第一个是“ProductPlace”,其外键为网站用户模型(“user”)
我在“forms.py”文件中创建了与这三个模型相关联的表单集。但我不知道怎么处理“views.py”
#models.py
from django.db import models
from django.core.validators import FileExtensionValidator
from .validators import validate_file_extension
from django.contrib.auth import get_user_model
User = get_user_model()
# Create your models here.
class ProductPlace(models.Model):
name = models.CharField(max_length=50)
num_road = models.IntegerField(blank=False, null=False)
name_road = models.CharField(max_length=50)
postal_code = models.IntegerField(blank=False, null=False)
city = models.CharField(max_length=50)
country = models.CharField(max_length=50)
acquired_by = models.ForeignKey(User, related_name="product_places",
null=True, on_delete=models.SET_NULL)
def __str__(self):
return self.name
class Product(models.Model):
name = models.CharField(max_length=50)
price = models.IntegerField(blank=False, null=False)
place = models.ForeignKey(ProductPlace,related_name="products", on_delete=models.CASCADE)
class Meta:
ordering = ('name',)
def __str__(self):
return self.name
class Menu(models.Model):
name = models.CharField(max_length=50)
price = models.IntegerField(blank=False, null=False)
place = models.ForeignKey(ProductPlace, related_name="menus", on_delete=models.CASCADE)
class Meta:
ordering = ('name',)
def __str__(self):
return self.name
#forms.py
from django import forms
from .models import *
from django.forms.models import inlineformset_factory, modelformset_factory
from django.contrib.auth import get_user_model
User = get_user_model()
ProductPlaceFormSet = inlineformset_factory(
User, ProductPlace, fields=['name', 'num_road', 'name_road', 'postal_code', 'city', 'country'],
extra=1, can_delete=True
)
ProductFormSet = inlineformset_factory(
ProductPlace, Product, fields=['name', 'price'],
extra=1, can_delete=True
)
MenuFormSet = inlineformset_factory(
ProductPlace, Menu, fields=['name', 'price'],
extra=1, can_delete=True
)
我想获得一个窗体视图与添加按钮和删除按钮为产品的地方,产品和菜单
目前没有回答
相关问题 更多 >
编程相关推荐