3

最近、LinuxApacheサーバーにDjangoUserenaをインストールしました。

いくつかのエラーを修正した後、私はドキュメントを調べ始めました。しかし、ドキュメントを検索した後、そして多くのGoogle検索を行った後でも、ページの外観を変更する方法を見つけることができません!たとえば、サインインページ、サインアップページなどの外観を変更するにはどうすればよいですか?各userenaテンプレートが拡張されることは知っていますbase.htmlが、そこからどこに行くのですか?

非常に単純なものが欠けている可能性がありますので、答えが非常に明白な場合はご容赦ください。

4

4 に答える 4

8

これはsigninUserena(source)のメソッドシグネチャです-

def signin(request, auth_form=AuthenticationForm,
       template_name='userena/signin_form.html',
       redirect_field_name=REDIRECT_FIELD_NAME,
       redirect_signin_function=signin_redirect, extra_context=None):

ご覧のとおりtemplate_name、テンプレートの場所を保持するメソッドがあります。これをオーバーライドできます。あなたのurls.py中で、あなたはそれを次のように使うことができます-

url(r'^signin/', 'userena.views.signin', {'template_name': 'signin.html'}, name="signin"),

signin.html次に、フォルダ内にページを作成してtemplates拡張できbase.htmlます。ビューはsignin、と呼ばれる変数でログインフォームを送信しますformソースを見ることができます。テンプレートのフォームは、のように使用できsignin.htmlます{{ form.as_p }}。をたどることができる場合は、各フィールドを個別にフォーマットすることもできますuserena.forms. AuthenticationForm。もう一度、ソースコードを確認してください。このようにオーバーライドできるUserenaのビューに対しても同じことができます。

疑わしい場合は、ソースコードを読んでください。:)

于 2013-03-27T05:56:57.030 に答える
4

userena デフォルト をオーバーライドする必要がありますtemplates

templates/名前付きの中にディレクトリを作成します。userena/たとえば、フォームを変更する場合は、作成したディレクトリ内にテンプレートファイルをsignup簡単に作成して、書き込みを開始します。signup_form.htmluserena/

たとえば、これがデフォルトのsignup_form.htmlテンプレートです。

userenaのデフォルトテンプレートはgithubリポジトリにあります

于 2013-03-27T08:34:17.570 に答える
1

提供されたuserenaテンプレートをテンプレートディレクトリにコピーするだけです。

あなたはそれらをLinuxボックスで見つけることができますfind / -name userena

あなたが探している道はです../userena/templates/userena。userenaフォルダをテンプレートディレクトリにコピーして、の変更を開始しますsignin_form.html

于 2013-03-27T07:42:24.593 に答える
0

テンプレートを独自のテンプレートディレクトリにコピーするだけです。このリンクをたどる場合は、ディレクトリ「userena」をテンプレートディレクトリにダウンロードしてください。次に、電子メールテキストやテンプレートを含むテンプレートをカスタマイズできます。

于 2013-03-27T08:22:46.627 に答える