2009-09-17 21 views
10

Django Adminを少しは理解しようとしていますが、Djangoのドキュメントには時には欠けているものがあります。Django管理者のフィールドセット

フィールドセットを使用して特定の管理ページのレイアウトを制御することができます。私が把握できないのは、フィールドセットの名前です。

私はこの中には、以下の

Class DemoAdmin(admin.ModelAdmin): 
    list_display = ('name', 'City') 

として次のクラス

Class Demo(model.Model): 
    name = models.CharField(max_length=150) 
    address = models.CharField(max_length=150) 
    city = models.CharField(max_length=50) 
    zip = models.CharField(max_length=15) 

とし、管理者クラスを持っている場合は、不自然な例とはいえ、私は可能なものをフィールドセットを使用することができますか?

+0

フィールドセットの道を行く前に、もっと複雑なモデルが必要になるでしょう。個人的には、フィールドセットのドキュメントはかなり良いと思う:http://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.ModelAdmin.fieldsets –

+0

私はそれが同意するだろうより複雑なモデルに適しています。これは私の実際のモデルではありません。ドキュメントに関しては、フィールドセット名が何であるかを実際に知ることができませんでした。つまり、すべての変数名がフィールドセット名になります。 "buitl-in"フィールドセットは何ですか? – Consiglieri

+0

私はフィールドセットが何であるか誤解していると思います。これは、モデル管理ページでフィールドをグループ化できる単なる方法です。ドキュメントに例を実装するだけで、あなたにとっては明らかになるはずです。 – orwellian

答えて

26

これを試してみると、どのように見えるか、すぐにわかります。

class DemoAdmin(admin.ModelAdmin): 
    list_display = ('name', 'city') 
    fieldsets = (
     ('Standard info', { 
      'fields': ('name') 
     }), 
     ('Address info', { 
      'fields': ('address', ('city', 'zip')) 
     }), 
    ) 

編集するために変更ページに移動すると、名前ボックスに「標準情報」というボックスが1つ表示されます。そして、アドレス欄に「アドレス情報」と書かれているボックスと、その後に同じ行に都市と郵便番号フィールドが表示されます。

+0

ありがとう、それに旋風を与える! – Consiglieri

+3

@Consiglieri正常に機能していれば、「受け入れられた回答」ボタンをクリックするのが普通です:) –

関連する問題