代码之家  ›  专栏  ›  技术社区  ›  Jan M

使用Django/Python在每行中使用Select表单的数据表

  •  0
  • Jan M  · 技术社区  · 3 年前

    我是django/python的新手,但我想创建一个界面网站,用于患者及其预约的数据库。为了方便该界面的用户,有人请求直接在数据表中选择appointmentstatus,如图所示。

    图片中每一行的select表单都不起作用,仅以html为例呈现,以展示我想要实现的目标。

    我试图使用django中的一个函数,根据请求为每一行返回一个表单,当前状态为预选状态。但我失败得很惨。。。也许有人给了我一个提示?

    我想创造什么 enter image description here

    我所做的是创建一个表单类和一个可以通过url访问的视图函数:

    网址。py:

     path('appointments/<int:pk>/quickupdatestatus/', views.AppointmentQuickUpdateStatus, name='appointment-quick-update-status'),
    

    看法py:

    def AppointmentQuickUpdateStatus(request, pk):
    if request.user.is_authenticated:
        ap = appointment.objects.get(pk=pk)
        if request.method == 'POST':
            ap.status = request.POST.get('status')
            ap.save()
            messages.success(request, 'Status erfolgreich bearbeitet!')
        else:
            form_class = AppointmentQuickStatusForm(initial={'status': ap.status})
            render(form_class)
            #How can I return just the Form and Render it for every individual row?
    else:
        response = redirect('/account/login/')
        return response
    

    类型py:

    class AppointmentQuickStatusForm(forms.Form):
    status = forms.ModelChoiceField(
        label='Status:',
        queryset=status.objects.all(),
        required=True,
        widget=forms.Select(attrs={'class': 'form-control', 'onChange': 'form.submit();'})
    )
    
    0 回复  |  直到 3 年前