私はPythonとDjangoとシリアライザについて学ぶのは初めてです。私はシリアライザクラスを定義する際に、内部にネストされたメタクラスが必要であることを確認しました。私はこのメタクラスのコンセプトに賛成できないので、私はそれについて調べて、メタクラスはクラスがインスタンスであるクラスであることを発見しました。それを読んだ後でさえ、私は混乱しています。外側のシリアライザクラスは内部メタクラスのインスタンスですか?ここでこのメタクラスを使用する必要はありますか?django:なぜ私たちはmodelSerializerの中に入れ子になったメタクラスを使用しますか?
0
A
答えて
2
PythonのメタクラスとDjangoのメタクラスは、異なる概念です。
Googleで見つけたのは、Pythonのメタクラスです。これは、Djangoフレームワークが多くを使用していますが、ユーザーフレンドリーなコードではありません。 This blog postでは、Djangoがフレームワークのコードでメタクラスをどのように使用するかを説明します。これらのクラスが読み込まれ、特定の要素の構成を説明するモデル、フォーム、シリアライザ、ModelAdmins、等:
一方Djangoのメタクラスは、それがフレームワーク最前要素のうちのいくつかで使用される内部クラス構造体の実行時または移行時にはデータベースに保存されませんが、データベースの問題ではないためです。たとえば、フレームワークは、注文が指定されていない場合、そのモデルのQuerySetの優先順位が何であるかを知る必要があるときに、モデルのMeta構成を読み取ります。フォームは、is_valid
を呼び出すときに検証する必要があるフィールドを読み取ります。その他。
関連する問題
- 1. なぜ私たちはdjangoのハードコードされたURLを削除する際に{{}}を使用しませんか?
- 2. Groovyの - 私たちは、単純なGroovyのクラス持っメタクラス
- 3. 入れ子になったクラスでインポートされたパッケージを使用できないのはなぜですか?
- 4. 入れ子になったtry ... C++例外ハンドラの中にキャッチしますか?
- 5. XHTML:入れ子になったULが無効なのはなぜですか?
- 6. JSOUPを使用して入れ子になったJSONを投稿中にエラーが発生しました
- 7. Djangoで入れ子になったフォームを保存する
- 8. なぜこの単純なMongoose.jsプログラムは、「入れ子にされた」保存中にフリーズしますか?
- 9. 入れ子になったテンプレートの特殊化中に入れ子になったテンプレートクラスの静的メンバーを初期化していますか?ここ
- 10. 保留中のインテントの概念は何ですか?なぜ、私たちはPending Intentを使用しますか?
- 11. CoreDataを使用した入れ子になった元に戻すグループ
- 12. モデルプロパティを使用したModelSerializer
- 13. 入れ子になったインスタンス値の入れ子になったネストされた記述子
- 14. はなぜ急に私たちのアプレット
- 15. 入れ子になった$ .getJSONは()コルドバ
- 16. 入れ子になったJSONObject Javaを取得しますか?
- 17. Javascript。入れ子になったフェッチの約束を待ちます
- 18. なぜ2つの入れ子になった中括弧がありますか?
- 19. モデルから入れ子になった入れ子
- 20. Jquery Slidetoggleカスケードを使用した入れ子になったメニューのコルプサイズ
- 21. C++:私はtypedefingと入れ子になったクラスの問題
- 22. Android - なぜ私たちはadapter.notifydatasetChanged()メソッドを使用していますか?
- 23. なぜ私たちはjoomlaで命名規則を使用しますか?
- 24. Androidの入れ子になったスクロール
- 25. 入れ子になったの.propertiesファイル
- 26. ジェネリッククラスの入れ子になったジェネリック
- 27. BeautifulSoupを使用して入れ子になったhtmlをスクラップできない
- 28. 静的な入れ子になったクラスは、私は、静的な入れ子になったクラスStatClassを持って
- 29. 入れ子になったフォームの詳細を返します
- 30. ログスタッシュの入れ子になったjsonを解析します
いいえ、それはまったく別の概念です。ここではいくつかの定義を持つ内部クラスです。しかし、同じ概念がDjango全体で使用されています。実際には、あなたがdjango-rest-frameworkを学ぶ前に、あなたはDjangoを学ぶべきです。あなたが持っていれば、このパターンはあなたを驚かせることはありません。 –