我将模型的实例传递到modelForm中,但是在视图中,当我打印表单时,模型内的值不显示。另外,在我的模板上呈现表单时,实例中的值也不会显示。
Views.py
def support_ticket_view(request, id=None):
id = int(id)
instance = SupportTicket.objects.get(id=id, user=user)
form = SupportTicketEditForm(request.POST or None, request.FILES or None, instance=instance)
context = {
'form': form,
}
return render(request, 'accounts/support_ticket_view.html', context)
表格
class SupportTicketEditForm (forms.ModelForm):
def __init__(self, *args, **kwargs):
self.instance = kwargs.pop('instance',None)
super(SupportTicketEditForm, self).__init__(*args, **kwargs)
class Meta:
model = SupportTicket
fields = (
'image',
'body_question',
'urgency',
'question_type',
'status',
)
widgets = {
'image': ImageThumbnailFileInput
}
models.py
class SupportTicket(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
question = models.TextField(max_length=10000, null=True, blank=False)
def __str__(self):
return self.user.username
删除了以下内容:
def __init__(self, *args, **kwargs):
self.instance = kwargs.pop('instance',None)
super(SupportTicketEditForm, self).__init__(*args, **kwargs)
感谢Daniel Roseman!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句