こんにちは私はProfile
OneToOneFieldで作成したモデルのフィールドに基づいてモデルインライン管理でオブジェクトをフィルタリングしようとしてUser
いますプロファイルモデルにはフィールドブランチがあるので、ログインしたユーザーに基づいてオブジェクトをフィルタリングしたいと思います
class ProductDetailInlineAdmin(admin.StackedInline):
readonly_fields = ('created_date', 'generated_url')
model = ProductDetail
extra = 1
def formfield_for_foreignkey(self, db_field, request, **kwargs):
if db_field.name == "product":
kwargs["queryset"] = ProductDetail.objects.filter(
product=request.user.profile.branch_id)
return super().formfield_for_foreignkey(db_field, request, **kwargs)
製品の外部キーは、ブランチを除外せずにすべてを返します。フィルタリングを実行するにはどうすればよいですか?
def formfield_for_foreignkey(self, db_field, request, **kwargs): if db_field.name == "product": kwargs["queryset"] = ProductDetail.objects.filter( product=request.user.profile.branch_id) return super().formfield_for_foreignkey(db_field, request, **kwargs)
私の問題は、オートコンプリートフィールドに製品を追加し、フィルターを無視してすべてのクエリを返すことでした。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加