user,package,travellers
CustomizeRequest
除了destinations
字段(many2manyfield)之外,模型的字段正在被保存。
任何帮助将不胜感激!!!
模型.py
class CustomizeRequest(models.Model):
user = models.ForeignKey(User)
package = models.CharField(max_length =20,null=True,blank=True)
travellers = models.CharField(max_length=2)
destinations = models.ManyToManyField(DestinationChoices)
def __str__(self):
return self.travellers
视图.py
def packageDetails(request,slug):
package = Package.objects.get(slug=slug)
if request.method=="POST":
form = CustomizeRequestForm(request.POST)
if form.is_valid():
customize_request = form.save(commit=False)
customize_request.user = request.user
customize_request.package = package
customize_request.save()
form.save_m2m()
else:
print("errorerrorerrorerrorerror")
else:
print("notPostData")
crform = CustomizeRequestForm()
elements = CustomizeRequest.objects.filter(user=request.user,package=package)
destinations = DestinationChoices.objects.all()
context = {'package': package,'crform':crform,'elements':elements,'destinations':destinations }
return render(request,'tour/packageDetails.html',context)
表格.py
nTravellerCHOICES = (('1', '1',), ('2', '2',), ('3', '3',), ('4', '4',), ('5', '5',), ('6', '6',), ('7', '>6',))
class CustomizeRequestForm(forms.ModelForm):
travellers = forms.ChoiceField(widget = forms.RadioSelect,choices = nTravellerCHOICES)
destinations = forms.ModelMultipleChoiceField(required=False,queryset=DestinationChoices.objects.all())
class Meta:
model = CustomizeRequest
fields = ("travellers","destinations",)
不粘贴模板代码,因为我很确定问题出在模型或视图代码中,因为它是一个保存问题