Django 如何在数据库中插入多个选项并显示

Django 如何在数据库中插入多个选项并显示,django,Django,我的型号是: class LabRequest(models.Model): ticket = models.ForeignKey(Ticket, on_delete=models.CASCADE) lab_test = models.ManyToManyField(Lab) 我的表格 class LabRequestModelForm(forms.ModelForm): class Meta: model = LabRequest fi

我的型号是:

class LabRequest(models.Model):
    ticket = models.ForeignKey(Ticket, on_delete=models.CASCADE)
    lab_test = models.ManyToManyField(Lab)
我的表格

class LabRequestModelForm(forms.ModelForm):
    class Meta:
        model = LabRequest
        fields = ['ticket', 'lab_test']
        widgets = {
            'lab_test': forms.CheckboxSelectMultiple,
        }
我的观点

def LabRequestToGenerateView(request):
    if form.is_valid():
        obj = form.save(commit=False)
        obj.created_by = request.user.id
        obj.save()

    return render(request, 'dashboard/laboratory_request.html', {'form': form})
我的模板

<form action="." method="POST">
    {% csrf_token %}
    {{ form.as_p }}
    <div class="form-group float-right">
        <button type="submit" name="submit" class="btn btn-success btn-sm" > <i
                class="fa fa-save"></i>
            Save</button>
    </div>
</form>



{% for rl in rl %}

<label for=""> Ticket: {{ rl.ticket }} </label>
<p> Lab Tests: {{ rl.lab_test }}</p>

{% endfor %}

{%csrf_令牌%}
{{form.as_p}}
拯救
{rl%中的rl为%r}
票证:{rl.Ticket}
实验室测试:{rl.Lab_test}

{%endfor%}
所以,它显示为一个复选框,这很好。但当我想保存一些数据时,它只保存票证,而不保存实验室测试?那么,我如何保存这两个呢


正如您所看到的,它只显示票证,票证是Ubed Gedi ALi,我想看的是实验室测试,它显示的是appname.modelname.None

几乎可以肯定问题出在显示数据的地方,而不是保存数据的地方。请显示视图和模板。请看,我更新了我的帖子,请帮助
lab\u test
是一个多对多字段,您需要迭代
rl.lab\u test.all
。(在您现有的循环中,您不应该使用与查询集相同的项名称。)执行此操作后,实验室测试:{{{rl.Lab_test.all}

输出为实验室测试:读取-您没有调用
表单。save_m2m()
<form action="." method="POST">
    {% csrf_token %}
    {{ form.as_p }}
    <div class="form-group float-right">
        <button type="submit" name="submit" class="btn btn-success btn-sm" > <i
                class="fa fa-save"></i>
            Save</button>
    </div>
</form>



{% for rl in rl %}

<label for=""> Ticket: {{ rl.ticket }} </label>
<p> Lab Tests: {{ rl.lab_test }}</p>

{% endfor %}