M2Mタイプの関係で2つのモデルが関連しています。私は自分のエンティティを編集するために管理者のfilter_horizontal
を使用します。Django filter_horizontal filtering
ただし、私はfilter_horizontal
ウィジェットの左側に表示されているものを制御したいと思います。たとえば、特定の基準に一致するエンティティのみをフィルタリングして表示したいとします。
M2Mタイプの関係で2つのモデルが関連しています。私は自分のエンティティを編集するために管理者のfilter_horizontal
を使用します。Django filter_horizontal filtering
ただし、私はfilter_horizontal
ウィジェットの左側に表示されているものを制御したいと思います。たとえば、特定の基準に一致するエンティティのみをフィルタリングして表示したいとします。
この件名は、Django管理者にとっては常に難しいものです。私はそれを見つけたと思う ...
def get_queryset(self, request):
qs = super(BAdmin, self).get_queryset(request)
return qs.filter(user=request.user)
:
クラスBAdmin(admin.TabularInline):私は、インラインdefenitionに、あなたがこのような何かを行うことができたとし!
class MyModelAdmin(admin.ModelAdmin):
def formfield_for_manytomany(self, db_field, request, **kwargs):
if db_field.name == "cars":
kwargs["queryset"] = Car.objects.filter(owner=request.user)
return super(MyModelAdmin, self).formfield_for_manytomany(db_field, request, **kwargs)
ModelAdmin.formfield_for_manytomany(db_field, request, **kwargs)
Thxを!私はそれがあなたが編集しているモデルをキャッチすると思いますが、 "filter_horizontal"の左のボックスにあらかじめ設定されている "子供" –