如何从模板中调用instance.delete()?

时间:2015-01-05 18:07:09

标签: django-templates django-views

我的Django模板中有一个'for循环',显示所有待售条目,我想卖家(假设他们已登录),如果他们选择,可以删除每个条目。我不明白如何完成这一部分。我知道如何在Python中删除对象。

Entry.objects.filter(name="toaster").delete()

但我不明白如何从模板中链接或调用它。

我想做什么,如果可能的话,在我的模板中是这样的。

  {% for entry in latest_entries %}
       entry.name <a href="{{ entry.delete() }}">delete</a>
       entry.price
       entry.picture
       entry.sellername   
  {% endfor %}

显然这已经被打破了,并且不起作用,但是如果可行的话,我想应用相同的逻辑。

我可以在不添加任何其他网址格式的情况下完成此操作吗 有没有什么方法可以让最终用户能够在不使用Ajax的情况下删除项目,并且无需添加URL模式(例如我不想删除/ entryname,我希望最终用户能够直接删除项目来自latest_entries页面)?

我觉得要么有一些非常基本的东西,我在这里不理解,或者这比我想象的要复杂。

1 个答案:

答案 0 :(得分:1)

你必须调用该函数来删除条目。您可以使用ajax调用它或将用户发送到特权用户可访问的特定URL,然后将其返回。在这种情况下,我将在条目附近创建带有复选框的表单。然后用户可以选择条目并提交表单。没有其他办法。