模型.py:
class MyText(models.Model)
value = models.TextField()
appearance = models.Charfield(
max_length=50,
choices=(
('bold', 'Bold'),
('italic', 'Italic'),
)
)
Run Code Online (Sandbox Code Playgroud)
目的:
a_lot_of_text = MyText(value='a lot of text', appearance='bold')
Run Code Online (Sandbox Code Playgroud)
我将这个对象通过contextin传递views.py到 HTML 模板中。我想检查(在 HTML 中)有什么样的外观a_lot_of_text,并使用 certanclass作为其<div>元素。换句话说,我想得到这样的东西:
mytemplate.html(伪代码):
<style>
bold_class {...}
italic_class {...}
</style>
{% if object.appearance == 'bold' %}
{% somehow i will use 'bold_class' %}
{% elif object.appearance == 'italic' %}
{% somehow i will use 'italic_class' %}
{% endif %}
{% for word …Run Code Online (Sandbox Code Playgroud) Django 说,我应该这样渲染inline formset:
{{ formset.management_form }}
{% for form in formset %}
{{ form.id }}
{{ form.field_1 }}
{{ form.field_2 }}
<button type="button"> delete </button>
{% endfor %}
<button type="submit"> submit </button>
Run Code Online (Sandbox Code Playgroud)
好的。但是如果我想form动态删除一些表单集对象 ( ) 怎么办?用户按下delete按钮 - 我form从 DOM 中删除,我使用 ajax 删除与form数据库中的对象相关的对象。到目前为止它工作正常。但是当用户点击时submit- 我的 views.py 试图验证表单集:
filled_formset = OrderItemFormSet(request.POST, instance=order)
if filled_formset.is_valid():
Run Code Online (Sandbox Code Playgroud)
并引发错误:
MultiValueDictKeyError at /order/cart/
"'orderitem_set-0-id'"
...\market\ordersys\views.py in show_cart
59. if filled_formset.is_valid():
Run Code Online (Sandbox Code Playgroud)
我认为这是因为formdjango 显示的对象有一定的规律性(第一种形式有 id = …