djangoは初めてです
私は投票アプリケーションに取り組んでいます。投票した後も同じページに留まる必要があります
ページを離れずに更新して成功メッセージを表示したいという意味
これが私のview.pyです(二重投票を避けるためにCookieを設定してチェックします):
@render_to('user/books_list.html')
def vote(request, object_id):
voted=request.session.get('has_voted',[])
books = Book.objects.get(id=object_id);
if object_id in voted:
return {
'object': books,
'error_message': "You have already voted.",
}
else:
books.votes += 1
books.save()
request.session['has_voted']=voted+[object_id]
return locals()
これが私のurls.pyです:
urlpatterns = patterns('user.views',
url(r'^books/$', 'books_list', name="books_list"),
url(r'^books/(?P<object_id>\d+)$', 'book_detail', name="book"),
url(r'^books/vote/(?P<object_id>\d+)$', 'vote', name="vote"),
)
これが私のテンプレートです:
{% if list_participant %}
{% for book in list_books %}
{{ book.name }}
<a href={% url vote book.id %} >vote</a>
{{ book.votes }}
{% endfor %}
{% endif %}
今のやり方では、books /vote/xにリダイレクトされます。前のページであるbooks/にリダイレクトされます。
どんなアイデアでもよろしくお願いします