Djangoの管理者登録されたソース知人

 

 

 

アプリでレジストリは、メソッドを使用するときは:

admin.site.register(models.Book)
Djangoの管理使用
     1 モデルテーブルでアプリケーションを登録します。
    
     2 .AdminのURL法の
        HTTP: //127.0.0.1:8000/admin/app01/book/               帳表ビュー
        HTTP: //127.0.0.1:8000/管理者/ app01 /書籍/追加/           ブックテーブルの追加
        HTTPを: //127.0.0.1:8000/admin/app01/book/3/change/       テーブルエディタ帳
        :HTTP //127.0.0.1:8000/admin/app01/をブック/ 3削除/ /       ブックテーブルページの削除
        
        HTTPを: //127.0.0.1:8000/admin/app01/publish/               ビューは、テーブルの公開
        HTTPを: //127.0.0.1:8000/admin/app01/publish/add/           公開テーブルには、追加
        のhttpを://127.0.0.1:8000/admin/app01/publish/3/change/       エディタは、テーブルの公開
        HTTPを: //127.0.0.1:8000/admin/app01/publish/3/delete/       ページは、テーブルのパブリッシュ削除
    
        PSを:
             1 .adminはCRUD 4生成し、各登録されたURLを与える
        
        
        機能の5つの主要なパラメータの
            list_display制御表示フィールドは、多くのフィールド入れないように注意して
    
    クラス構成の概念
    
    管理ブートソース
        ジャンゴを起動時に各アプリケーションの実装が続きますファイルをのadmin.py 
        から django.utils.module_loading インポートautodiscover_modules 
        autodiscover_modules(' ADMIN ' 
        
    
    ソースシングルトン
    
    登録されたソース
    
    クラス:ModelAdminの(BaseModelAdmin)
        ... 
        #の設定クラスを
        
        
    クラスAdminSite(オブジェクト):
         デフ __init__(自己、名前= ' 管理者' ):
            self._registry = {}  model_classクラス- >インスタンスをADMIN_CLASS 
        デフ(自己、モデル、ADMIN_CLASS =なし、**登録オプション
            ):""」
            与えられた管理クラスに指定されたモデル(複数可)を登録します。

            モデル(s)はモデルクラスではなく、インスタンスでなければなりません。

            管理者クラスが与えられていない場合、それはModelAdminの(デフォルトの使用する
            管理オプションを)。キーワード引数がある場合与えられた-例えば、list_display - 
            彼らはadminクラスにオプションとして適用されます。

            。すでに登録されたモデルの場合、このウィルザ・によってAlreadyRegisteredを上げるIS 

            。IFは、モデルの抽象的です、これはウィルザ・によってImproperlyConfiguredを上げる
            「」 " 
            IF  ません:ADMIN_CLASS 
                ADMIN_CLASS = ModelAdminの
             インスタンス化をレジストリの中に保存するADMINクラスで 
            = self._registry [モデル] ADMIN_CLASS(モデル)
    
    サイト = AdminSite()
        
    admin.py登録ステートメント
    
    admin.site.register(models.Publish)  モデルテーブルのみと発生インスタンス化パラメータテーブルモデルオブジェクトに登録されている
    格納されたキー値ペアとして現場オブジェクトに_registry
    

 

おすすめ

転載: www.cnblogs.com/1624413646hxy/p/11279422.html