豊橋技術科学大学の近藤です。
前回に引き続き、AdminSiteのオーバーライドに関して
まとめてみます。
基本的にはModelAdminのオーバーライドと同様に、
このようにページ名を変更していけばOKでした。
(前回は付け忘れていましたが、autoviewという名前空間をつけました)
オーバーライドし、ページ名を変更する関数は、
オーバーライドを行います。
これによりadminサイトと同様に、 urls.pyのurlpatternsに
を追加し、
使用したいモデルをadmin.site.registerのように、
とすれば、使用できました。
もちろんAdminのようにリストに表示したいものを
list_displayに登録することで変えることも可能です。
ただ、このままではAdminサイトの更新履歴と同じデータベースを
利用しているので、その点を修正する方法について
次回の記事にまとめようと思います。
前回に引き続き、AdminSiteのオーバーライドに関して
まとめてみます。
基本的にはModelAdminのオーバーライドと同様に、
if perms.get('change', False): try: model_dict['admin_url'] = reverse('autoview:%s_%s_changelist' % info, current_app=self.name) except NoReverseMatch: pass
このようにページ名を変更していけばOKでした。
(前回は付け忘れていましたが、autoviewという名前空間をつけました)
オーバーライドし、ページ名を変更する関数は、
- __init__
- register
- index
- app_index
オーバーライドを行います。
これによりadminサイトと同様に、 urls.pyのurlpatternsに
url(r'^autoview/', include(autoview.urls)),
を追加し、
使用したいモデルをadmin.site.registerのように、
autoview.register(Hoge)
とすれば、使用できました。
もちろんAdminのようにリストに表示したいものを
list_displayに登録することで変えることも可能です。
ただ、このままではAdminサイトの更新履歴と同じデータベースを
利用しているので、その点を修正する方法について
次回の記事にまとめようと思います。
コメント
コメントを投稿