我使用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 %}
答案 0 :(得分:0)
我不知道您的模型架构,但我要说您只需要创建一个URL,您将传递slugs(或ID)以将模型添加到用户的收藏夹中。
如果您想要简化,请使用GET请求:<a href="{% url 'vote' %}?trip={{ trip.slug }}">Add as Favourite!</a>
如果您喜欢,请使用AJAX和onclick操作使用POST请求;)查看here以获取更多信息
名为vote
的目标视图将会读取request.user
和request.REQUEST
,并在模型中建立正确的连接(我猜是ManyToMany)。