2009-05-27 20 views
3

Djangoで管理用テンプレートを変更したいと思います。Django管理用テンプレートをカスタマイズする

% cat /Library/Python/2.5/site-packages/django/contrib/admin/templates/admin/includes/fieldset.html 
<fieldset class="module aligned {{ fieldset.classes }}"> 
    {% if fieldset.name %}<h2>{{ fieldset.name }}</h2>{% endif %} 
    {% if fieldset.description %}<div class="description">{{ fieldset.description|safe }}</div>{% endif %} 
    {% for line in fieldset %} 
     <div class="form-row{% if line.errors %} errors{% endif %} {% for field in line %}{{ field.field.name }} {% endfor %} "> 
     {{ line.errors }} 
     {% for field in line %} 
     <div{% if not line.fields|length_is:"1" %} class="field-box"{% endif %}> 
      {% if field.is_checkbox %} 
       {{ field.field }}{{ field.label_tag }} 
      {% else %} 
       {{ field.label_tag }}{{ field.field }} 
      {% endif %} 
      {% if field.field.field.help_text %}<p class="help">{{ field.field.field.help_text|safe }}</p>{% endif %} 
     </div> 
     {% endfor %} 
     </div> 
    {% endfor %} 
</fieldset> 

どのようなオブジェクトがフィールドですか、具体的にはどのようにフィールドの名前を取得しますか?

答えて

3

fieldAdminFieldfield.fieldのインスタンスであることを理解BoundFieldのインスタンスをされていることを確認し、あなたがしてフィールドに名前参照することができます。あなたが管理者に深いダイビングを始めるとしたら

{{ field.field.name }}

カスタマイズは、ドキュメントが本当に欠けている唯一の場所です。あなたがそれを研究する時間を取れば、コードはよく書かれ、理解しやすいと言われています、IMHO。

ファイルがあまりないので、夕方に読んで読んでください。あなたのケースでは、私が開始すると:

1

done your researchですか?

その後、私はあなたのテンプレートを呼び出すpythonコードの上でポーリングを開始します。私は、そのフィールドは、例えばforms system

フィールド 検証を行うための責任があるクラスからです想像しますそのデータが有効な 電子メールアドレスであることを確認するEmailField 。

1

check hereもしあなたが全くそれを無効にする必要があれば。多くは構成可能です。

私はあなたにアドバイスをしたいと思います:あなたが理解していないものを上書きしないでください。まず、自分がそれ

関連する問題