2017-01-04 3 views
1

私はdjangoサーバーを初めて使い、ユーザー登録用の簡単なウェブサイトを構築しようとしています。ここに問題がある、私は私のホームページとしてindex.htmlで自分のアプリケーションを作成する。私は「サインアップ」リンクを私のホームページにアプリを追加しようとしていたdjango 1.10別のアプリページにリダイレクトされる1つのアプリページ

https://github.com/pennersr/django-allauth/tree/master/allauth

:私はまた、別のユーザー登録アプリを使用していました。基本的には、アカウントの一部、および理想的には、リンクがに指示することができます:私は、サーバーを実行するとhttp://127.0.0.1:8000/accounts/login/

しかし、それは私にエラーを与える:

Reverse for 'base' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: [] 

サーバー結果:

どちらのアプリ仕事私のホームページにリンクを追加しようとすると、エラーが発生します。

私の最初のアプリ内のindex.htmlファイルに関連するコード:

<li><a href="{% url 'allauth:base' %}">Log In</a></li> 

私のプロジェクトでのindex.htmlの完全なパスは次のとおりです。base.htmlため

project/app1/templates/app1/index.html 

フルパス私のプロジェクトである:

project/allauth/templates/base.html 

私は私はおそらく私の最初のアプリのurls.pyファイル内のURL行、および笙にビューを追加する必要があります知っていますそれはどうしたらいいですか?誰もがこれで私を助けることができる、多くの感謝します。

+1

他の登録アプリを使用する必要がありますか?ネイティブのジャンゴ認証システムを使うのは簡単です。 – Bobby

+0

URL設定のall-auth 'include'に' namespace'キーワードがありません。 –

+0

@Bobby、私は主にこのアプリでは電子メールの確認とソーシャルアカウントの機能が必要ですが、最初はその概念をよりよく理解するためにdjango認証システムを試してください。 –

答えて

0

<li><a href="{% url 'allauth:base' %}">Log In</a></li>

この行はURL逆転を使用して、はbaseが名前のURLで、allauth接頭辞が名前空間で、URLパターンです。最初にurls.pyに名前空間と名前付きURLを定義する必要があります。

このようなプロジェクトのurls.pyファイルに名前空間を定義します。

from django.conf.urls import include, url 

urlpatterns = [ 
    url(r'^author-polls/', include('polls.urls', namespace='author-polls')), 
    url(r'^publisher-polls/', include('polls.urls', namespace='publisher-polls')), 
] 

は、このようなアプリのurls.pyファイルにあなたの名前のURLを定義します。

from django.conf.urls import url 

from . import views 

app_name = 'polls' 
urlpatterns = [ 
    url(r'^$', views.IndexView.as_view(), name='index'), 
    url(r'^(?P<pk>\d+)/$', views.DetailView.as_view(), name='detail'), 
    ... 
] 

あなたが必要とするすべての助けをしていますこのドキュメント:Naming URL patterns

関連する問題