2017-12-06 10 views
0

エラーが発生し、修正方法がわかりません の逆順chat_roomが見つかりません。 chat_roomはprocess_exception_by_middleware'chat_room'のための逆が見つかりません。 'chat_room'は有効なビュー関数またはパターン名ではありません

  return super(AsgiHandler, self).process_exception_by_middleware(exception, request) 

... 

▶現地で

/home/mbae/.local/lib/python3.5/site-packages/channels/handler.py

   response = wrapped_callback(request, *callback_args, **callback_kwargs) 

... 

▶ローカルがnew_roomで /home/mbae/465/mysite/prj/views.pyをvarsの_get_responseで /home/mbae/.local/lib/python3.5/site-packages/django/core/handlers/base.pyをvarsのビュー機能やパターン名は有効ではありません

return redirect(chat_room, label=label) 

... 

▶地方は

views.py

def new_room(request): 
    new_room = None 
    while not new_room: 
     with transaction.atomic(): 
      l = Haikunator() 
      label=l.haikunate() 
      if Room.objects.filter(label=label).exists(): 
       continue 
      new_room = Room.objects.create(label=label) 
    return redirect(chat_room, label=label) 

def chat_room(request, label): 

    room, created = Room.objects.get_or_create(label=label) 

    messages = reversed(room.messages.order_by('-timestamp')[:50]) 

    return render(request, "prj/chat.html", { 
     'room': room, 
     'messages': messages, 
}) 

urls.py

url(r'^new/$', views.new_room, name='new_room'), 
url(r'^(?P<label>[\w-]{,50})/$', views.chat_room, name='chat_room'), 

room.htmlをvarsの:

<h1>{{ room.label }}</h1> 
<p class="quiet"> 
    Anyone with this URL can join the room and chat: 
    <code>{{ request.scheme }}://{{ request.get_host }}/{{ room.label }}</code> 
</p> 
<p> 
    <label for="handle">Your name:</label> 
    <input id="handle" type="text" placeholder="handle"> 
</p> 
<form id="chatform"> 
    <table id="chat"> 
     <tbody> 
      {% for message in messages %} 
       <tr> 
        <td>{{ message.formatted_timestamp }}</td> 
        <td>{{ message.handle }}</td> 
        <td>{{ message.message }}</td> 
       </tr> 
      {% endfor %} 
     </tbody> 
     <tfoot> 
     <tr> 
      <td>Say something:</td> 
      <td colspan=2> 
       <input id="message" type="text" placeholder="message"> 
       <button type="submit" id="go">Say it</button> 
      </td> 
     </tfoot> 
    </table> 
</form> 

答えて

0

私はこれが問題のラインだと思う:

return redirect(chat_room, label=label) 

"chat_room"代わりのchat_roomを渡して試してみてください!

他も参照してください:django redirect to view

+0

変更されましたが、まだ動作しません – user9062968

関連する問題