如何为表中的每一行生成单独的django URL?

时间:2013-08-05 02:56:36

标签: django django-forms django-templates

我使用ajax生成一个表,此表的每一行代表一个具有旅行分数和多个城市的旅行。我想为每次旅行添加一个“AddtoFavourite”按钮,一旦用户点击此按钮,将调用django视图,这将为用户“Favs”添加行程。现在我的问题是如何为每行生成此URL,我可以在请求中传递city,tripname和trip score

以下是生成该表的代码。

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

searchresults.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 %}

1 个答案:

答案 0 :(得分:0)

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

  • 如果您想要简化,请使用GET请求:<a href="{% url 'vote' %}?trip={{ trip.slug }}">Add as Favourite!</a>

  • 如果您喜欢,请使用AJAX和onclick操作使用POST请求;)查看here以获取更多信息

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