modelForm实例未通过

杰森·霍华德

我将模型的实例传递到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] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章