我的在线营销部门跟踪数千行电子邮件和分析营销数据,我正在构建一个工具,我们可以在内部使用它来管理数据,以便我们可以运行多个查询来生成报告。
CRUD操作正常运行,但要输入的数据太多,使用ticket_form.html,ticket_list.html和ticket_confirm_delete.html视图和模板效率很低。我的列表数据是表格式的,所以我想要的是在单个视图下组合操作,这样我就可以在表格的末尾添加一个列,用于添加,更新和删除行的图标。谢谢你的帮助。
我目前的观点,我想结合起来:
x
答案 0 :(得分:0)
使用以下代码作为参考
class TrafficForm(ModelForm):
def get_absolute_url(self):
#return edit url
def get_delete_url(self):
#return delete url
查看功能
def crud_traffic_view(request, template_name= "crud_traffic.html"):
all_objects = Traffic.objects.all()
form = TrafficForm()
context_dict = {"form" : form, "all_objects" : all_objects}
return render(request, template_name, {'all_objects' : all_objects})
模板
<table>
{% for traffic in all_objects %}
<tr>
<td>{{traffic.details}} </td>
<td><a href="{{traffic.get_absolute_url}}">Edit</a></td>
<td><a href="{{traffic.get_delete_url}}"> Delete</a></td>
</tr>
{% endfor %}
</table>
<form action="{% url 'add_traffic' %}" method="POST">
{% csrf %} {{form}}
...
</form>
这样您就可以从一个页面管理所有内容(仅转到另一个页面进行编辑/删除确认)。
如果您希望更快地使用模板,可以添加ajax调用来更新模板。