如何设置默认值可以用Django显示在表上?

2024-10-01 02:24:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经创建了一个formClass,如下所示:

class LyricForm(ModelForm):
  class Meta:
    model = Lyric 
    fields = ['title', 'body']
    widgets = {
        'body': Textarea(attrs = {'cols': 40, 'rows': 20 })
    } 

我用它来创建表单,我不想对它有任何默认值,它工作得很好

现在我想将其作为编辑窗体继承,其默认值是其现有值,如: enter image description here

我引用了stackoverflow中的一些相关问题如下: 视图.py

def update_lyric(request, pk):
  lyric = get_object_or_404(Lyric, pk = pk)
  form = LyricForm(request.POST, initial = {'title': lyric.title, 'body': lyric.body})
  return render(request, 'update_lyric_page.html',{'pk':pk, 'form':form})

但它不起作用。表单上没有显示任何默认值。我该怎么做?提前谢谢


Tags: form表单modeltitlerequestupdatebodymeta
1条回答
网友
1楼 · 发布于 2024-10-01 02:24:39

由于您使用的是modelforms,因此可以使用:

def update_lyric(request, pk):
  lyric = get_object_or_404(Lyric, pk = pk)
  form = LyricForm(request.POST, instance=lyric)
  return render(request, 'update_lyric_page.html',{'pk':pk, 'form':form})

相关问题 更多 >