newforms-admin初級編 続き
前回の続きです。
Djangoのadmin interfaceは、models.pyに記述していくと
filterやsearchなどの機能を追加しカスタマイズすることが出来ます。
安定版・開発版では
class Admin: pass
pass以下に記述します。
例として、検索の機能を追加します。検索対象はshort_name, long_nameとします。
class Admin: search_field = ['short_name', 'long_name']
newforms-adminでは少し違ってきます。
上記の安定版・開発版と同じように検索機能を追加します。
ついでに、Addressクラス名の表示が"Addresss"となっているので正しい表記にしておきます。
- 解りづらいかもしれないのでmodels.py全体を記述します。
from django.db import models from django.contrib import admin # Create your models here. class Address(models.Model): short_name = models.CharField(max_length=20) long_name = models.CharField(max_length=80) addr_line_1 = models.CharField(max_length=80, blank=True) addr_line_2 = models.CharField(max_length=80, blank=True) city = models.CharField(max_length=50) state = models.USStateField() zip = models.CharField(max_length=10, blank=True) def __uicode__(self): return self.short_name class Meta: verbose_name_plural = 'Addresses' class AddressOptions(admin.ModelAdmin): search_fields = ['short_name', 'long_name'] admin.site.register(Address, AddressOptions)
このようにAdmin Interfaceをカスタマイズすることが出来ます。
そして、newforms-adminはmodels.pyと分離してadmin.pyなどとして別管理することも出来ます。
次はもう少しカスタマイズしていきます。