我已经使用 RTFM 大概三周了,但我不知道该怎么做。如果我在这方面做得很好,那么我保证我会写一本 Django for Dummies 书,文档是难以理解的!
我有一个简单的笔记应用程序,它有一个索引页面,显示数据库中每个笔记的标题。我只希望列表中的每个项目都有一个复选框,以便您可以选择一个或多个注释,然后按删除按钮,重定向到“您确定要删除...“x、y 和 z”注释吗?页面,带有确认或拒绝。然后回到索引列表。就像在管理应用程序中一样。
我已经推断出我应该需要一个在表格中布置的模型表单作为每个对象的标题,并且它的复选框应该构成一个单独的表单。
我尝试了很多方法。最新的看起来是这样的。它没有抛出任何错误(我在 forms.py 函数中设置了一个小部件属性,但它不喜欢那样。我把它拿出来只是想看看它是否会显示一些东西。)但它没有显示任何东西全部。我也认为 select_note_function 应该是一个类。我能找到的所有文档都解释了 CharFields 和字符串输入。我找不到一个完整的例子来说明如何让小部件控制数据库。
表格.py:
from django import forms
from django.forms.models import modelformset_factory
from django.forms.widgets import CheckboxInput
from models import Note
def select_note_formset():
SelectNote = modelformset_factory(Note)
Form = modelformset_factory(
Note,
form=SelectNote,
fields='title',
)
模型.py:
def selection_index(request):
form = select_note_formset()
if request.method == 'POST':
formset = form(request.POST)
if formsest.is_valid():
pass
else:
formset=form
return render_to_response('select_index.html', {'formset':formset})
模板:
<form method="post" action="">
{{ formset.management_form }}
<table>
{% for form in formset %}
{{ form }}
{% endfor %}
</table>
</form>
据我所知,我可能会在完全错误的树上吠叫。如果有人能把这个拼出来,我将非常感激!