私はdjango 1.10を使用しています。リバース機能の仕組みを知りたいこれはdjangoを使った基本的なチャットアプリケーションです。ファイルがある7のもの以下 index.html
で:私はラインで立ち往生していないのですNoReverseMatch/<urls>
viwes.py
from django.shortcuts import render
from django.http import HttpResponse
from django.shortcuts import get_object_or_404
from chat.models import ChatRoom
def index(request):
chat_rooms= ChatRoom.objects.order_by('name')[:5]
context = {
'chat_list' : chat_rooms
}
return render(request,'chats/index.html', context)
def chat_room(request,chat_room_id):
chat = get_object_or_404(ChatRoom, pk =chat_room_id)
return render(request,'chats/chat_room.html', {'chat':chat})
チャット/ urls.py
from django.conf.urls import url
from django.urls import reverse
from chat import views
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^(?P<chat_id>[0-9]+)/$', views.chat_room, name='chat_room'),
]
インデックスを。 html
{% if chat_list %}</pre>
<ul>
<ul>{% for chat in chat_list %}</ul>
</ul>
<ul>
<ul>
<li><a id="" href="{% url 'chat_room' chat.id %}"> {{ chat.name }}</a></li>
</ul>
</ul>
<ul>{% endfor %}</ul>
<pre>
{% else %}
No chats are available.
{% endif %}
どのような提案も大歓迎です!
あなたのコードにそれをしてください適用フルエラースタック –
あなたが試した 'url'は?これを 'localhost'で実行すると' 127.0.0.1:8000'があなたのインデックスになり、 '127.0.0.1:8000/id'があなたのチャットルームになります。 'id'は任意の数字でなければなりません。それ以外の 'url'は定義されていません。あなたが正しい 'url'を入力したことを確認してください。 –
127.0.0.1:8000/chats/ –