【问题标题】:How to generate a separate django URL for each row in a table?如何为表中的每一行生成单独的 django URL?
【发布时间】:2026-01-12 03:20:06
【问题描述】:

我正在使用ajax 生成一个表格,该表格的每一行代表一个带有行程分数和多个城市的行程。我想为每次旅行添加一个“AddtoFavourite”按钮,一旦用户单击此按钮,将调用一个 django 视图,该视图会将旅行添加到用户的“Favs”中。现在我的问题是如何为可以在请求中传递城市、行程名称和行程分数的每一行生成此 URL

这是生成该表的代码。

请注意datas 是包含旅行列表的字典,每个旅行都有一个分数和多个城市。

搜索结果.html

{% for data in datas %}
<tr>
    <td>{{ data.score}}</td>
    {% for element in data.place.elements %}
    <td>
        <img alt="" src="http://blankket-mk8te7kbzv.elasticbeanstalk.com/img/mapPinSmall.png">{{element.placeName}}
    </td>
    {% endfor %}
    <td>
        <input type="button" onlick=" " id="AddMyTrip" value="Add" class="btn btn-primary"/>
    </td>
</tr>
{% endfor %}

【问题讨论】:

    标签: django django-forms django-templates


    【解决方案1】:

    我不知道您的模型架构,但我想说您只需要创建一个 URL,您将向其中传递 slug(或 ID),以便将模型添加到用户的收藏夹中。

    • 如果您想简单一点,请使用 GET 请求:&lt;a href="{% url 'vote' %}?trip={{ trip.slug }}"&gt;Add as Favourite!&lt;/a&gt;

    • 使用 AJAX 的 POST 请求和 onclick 操作,如果您喜欢的话;)查看here 了解更多信息

    名为vote 的目标视图将读取request.userrequest.REQUEST 并在模型中建立正确的连接(我猜是ManyToMany)。

    【讨论】:

      最近更新 更多