我是django/python的新手,但我想创建一个界面网站,用于患者及其预约的数据库。为了方便该界面的用户,有人请求直接在数据表中选择appointmentstatus,如图所示。
图片中每一行的select表单都不起作用,仅以html为例呈现,以展示我想要实现的目标。
我试图使用django中的一个函数,根据请求为每一行返回一个表单,当前状态为预选状态。但我失败得很惨。。。也许有人给了我一个提示?
我想创造什么
我所做的是创建一个表单类和一个可以通过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();'})
)