モデルの__unicode__メソッドをsearch_fieldsタプルに含める方法はありますか? __unicode__の結果をモデルに保存するための特別なフィールドを作成する必要はありません。この値は他のいくつかのモデルに依存するためです。管理フォームの検索フィールドとしてモデルの__unicode__を使用
答えて
ちょっと最近同様のものが必要でした。 this answersearch_fields
で説明されているように、データベース内の列を表す属性でのみ機能し、プロパティーではでは機能しません。
しかし、あなたの__unicode__
機能は、いくつかの他のモデル[内のフィールド]あなたはDjangoのクエリセットで行うのと同じ方法でsearch_fields adminにrelated field searchesを指定する方法について説明し this other answerで一見の依存している場合。
search_fields
タプルで述べたフィールドは
がhttps://github.com/django/django/blob/master/django/contrib/admin/views/main.pyライン349から370
UPDを見て、SQLクエリを構築するために使用されているので、いいえ、それは不可能です。さて、別のフィールドを作成してそこに__unicode__
メソッドの値を格納することができます。おそらく、それは醜く非効率的に見えますが、これによりデータベースの列をフィルタリングすることができます。 詳しい情報を教えてください__unicode__
の仕組みを見てください。
UPD2あなたunicode
方法:
def __unicode__(self):
return "%s%s%s%s-%s%s" % (
self.factory.republic.code.upper(),
self.factory.location.region and self.factory.location.region.code or '00',
self.factory.location.code,
self.factory.code,
self.kind.code,
self.code
)
ジャンゴsearch_fields
あなたが Catalog.objects.filter(**lookup_queries)
を実行することはできませんので、もし、あなたが管理者にsearch_fields
でそれを行うことはできません彼のORMメソッドを運営しています。残念ながら。
あなたはunicode
メソッドは6つのテーブルと他のプログラムロジックの結合で実際には異なります。このフィールドを検索するとSQL言語が複雑になり、インデックスは使用されません。結果をdbカラムに保存し、関連フィールドが更新されたときに更新してください。
さて、あなたは検索をカスタマイズする方法を知っていますか? –
"%s%s%s%s-%s%s"%(self.factory.republic.code.upper()、self.factory.location.regionおよびself.factory.location.region.codeまたは'00 '、self.factory.location.code、self.factory.code、self.kind.code、self.code) –
これはカタログIDです。このフィールドを作成すると、関連するすべてのモデルの変更をフックする必要があります。 –
- 1. モデルと管理者のDjangoフィールド検証?
- 2. 管理フォームの検証
- 3. 管理者の検索クエリ
- 4. 検証Djangoの管理親フォームとインラインデータ
- 5. MVC2で検索を管理し、NHibernateの
- 6. Django管理者のForeignKeyフィールドのテキスト検索
- 7. ジャンゴ - グループ管理者モデルの変更フィールド
- 8. Djangoのモデル管理者は、フォーム
- 9. 管理者でない場合は、モデル管理検索/フィルタオプションを削除してください
- 10. 管理者の計算フィールドの使用
- 11. 複数のモデルのDjango検索フィールド
- 12. Azure API管理ポリシー検索と置換
- 13. 管理パネルでのDjango管理フォームの検証
- 14. spdocumentライブラリの管理者を検索
- 15. APIを使用して整数フィールドのKenticoスマート検索インデックスを検索する
- 16. 検索ウィジェットを使用してandroid:text = "______"フィールドのテキストを検索できますか?
- 17. フラスコ管理者は「高度な検索」としてフィルタを適用します
- 18. ワードプレスの管理パネルの検索
- 19. 複数のdbフィールドの検索フォーム
- 20. データ注釈とJavaScriptを使用したモデル/フォームの検証
- 21. Ios:検索フィールドとしてテキストフィールドを使用
- 22. vb6のADODB.Recordsetを使用してフィールドの一部を検索
- 23. .NET MVCで2つのモデルを使用して検索する
- 24. PDFフォームのフィールド位置検索Itext
- 25. angle2を使用してmaxlengthフィールドの検証をフォーム
- 26. $ elemMatchを使用して配列内のフィールドを検索
- 27. Drupal 8 - 管理 - コンテンツの種類 - フォームの表示の管理 - フィールドのグループ、ラベル、ヘッダー
- 28. WordPressの検索フォームとカスタム分類のACFフィールドによる検索結果
- 29. フォームを使用してMySQLを検索して更新する
- 30. フォームを使用しないモデルのフィールドを設定する
私は関連フィールドの検索で答えを見ました...しかし、私の** \ __ unicode __ **はいくつかのテーブルの組み合わせなので、検索はすべて一緒に行う必要があります。 –