我能够在编辑模式下使用多个选择框:
<section class="container">
<div>
<select id="leftValues" size="5" multiple></select>
</div>
<div>
<input type="button" id="btnLeft" value="<<" />
<input type="button" id="btnRight" value=">>" />
</div>
<div>
<select id="rightValues" size="4" multiple>
{% for device in devices %}
<option>{{ device }}</option>
{% endfor %}
</select>
</div>
</section>
<div>
<input type="text" id="txtRight" />
</div>
</section>
<button type="submit" id="save">Save Changes</button>
<!--button type="cancel">Cancel</button-->
<a href="{% url 'inventory:display_maintenance' %}" ><button type="button">Maintenance Page</button></a>
</form>
<link rel="stylesheet" href="{% static 'css/msb.css' %}">
<script>
$("#btnLeft").click(function () {
var selectedItem = $("#rightValues option:selected");
$("#leftValues").append(selectedItem);
});
$("#btnRight").click(function () {
var selectedItem = $("#leftValues option:selected");
$("#rightValues").append(selectedItem);
});
$("#rightValues").change(function () {
var selectedItem = $("#rightValues option:selected");
$("#txtRight").val(selectedItem.text());
});
但是,当我选择“保存”按钮时,在对表进行更改之后,再次在模板edit_maintenance.html中,它不会输入数据库。
views.py中与此相关的代码如下:
def edit_maintenance(request, id): license_key = Maintenance.objects.get(id=id) maintenance_form = MaintenanceForm(instance=license_key) devices = Devices.objects.filter(maintenance = id) if request.method == 'POST': print(request.POST) maintenance_form = MaintenanceForm(request.POST, instance=license_key) if maintenance_form.is_valid(): maintenance_form.save() # return redirect('maintenance:edit_maintenance', id) args = { 'maintenance_form' : maintenance_form, 'devices' : devices } return render(request, 'inventory/edit_maintenance.html', args)
我对此还很陌生,因此任何提示,示例都很好。
答案 0 :(得分:0)
遗憾的是,这是新手的错误。我重新运行了makemigration并进行了迁移,该功能现在可以正常工作了……可以删除。现在,我需要处理要添加的代码。