gpt4 book ai didi

django - 在模板中带参数的函数。 Django

转载 作者:行者123 更新时间:2023-12-01 11:49:11 24 4
gpt4 key购买 nike

在我的模板中,我显示了用户关注的用户列表。我希望用户能够通过一个按钮删除他关注的其中一个用户。我有一个删除关系的函数 remove_relationship。

这是我的 models.py 中的函数:

  class UserProfile(models.Model):
(...)

def remove_relationship(self, person):
Relationship.objects.filter(
from_person=self,
to_person=person).delete()
return

我想将此函数传递到我的模板中:

   {% for user in following % }
<form method="post">
{% csrf_token %}
<input type="submit" value="delete" onclick="remove_relationship"/>
</form>
{%endfor%}

问题是我无法在我的模板中传递参数。那么我该怎么做才能让每个按钮都删除与正确用户的关系呢?

我看到了关于这个主题的另一个问题,但它看起来并没有解决我的问题 (http://stackoverflow.com/questions/1333189/django-template-system-calling-a-function-inside-模型)

感谢您的帮助。

最佳答案

您似乎混淆了客户端代码 (JavaScript) 和服务器端代码 (Django)。

要提交相关的用户 ID,您可以在表单中添加一个额外的隐藏字段:

{% for user in following % }
<form method="post" action="{% url views.remove_relationship %}">
{% csrf_token %}
<input type="hidden" name="user_id" value="{{ user.id }}">
<input type="submit" value="delete" />
</form>
{%endfor%}

然后创建一个 remove_relationship View ,根据您现在在 request.POST['user_id'] 中找到的用户 ID,在服务器端执行删除操作

关于django - 在模板中带参数的函数。 Django ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13233794/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com