2017-01-11 2 views
0

を親フィールドを追加私の2つのモデルです。ここは、ここではDjangoのadminフォームで

class Provider(models.Model): 
    name = models.CharField(max_length=75, null=True, blank=True) 
    code = models.CharField(max_length=15) 
    provider_parent = models.ForeignKey('self', null=True, blank=True) 
    accounts = models.ManyToManyField('Account', blank=True) 
    data_types = models.ManyToManyField('DataType', blank=True, 
             through='ProviderDataType') 

class Account(models.Model): 
    name = models.CharField(max_length=75, unique=True) 
    prefixes = models.ManyToManyField('AccountPrefix', blank=True) 

は、親の選択をしていることが可能である場合、私は思っていた私のadmin.py

class ProviderAdmin(admin.ModelAdmin): 
    list_display = ('code', '__unicode__') 

class AccountAdmin(admin.ModelAdmin): 
    list_display = ('__unicode__') 


admin.site.register(Provider, ProviderAdmin) 
admin.site.register(Account, AccountAdmin) 

です私のアカウントモデルを追加または更新しようとしたときに、それを保存するときに、親モデルでは、すでに多くのフィールドにアカウントが設定されています

答えて

1

ご質問が正しく理解された場合はTubularInlineを使用してください。このように:

class ProviderInline(admin.TabularInline): 
    model = Provider.accounts.through 
    extra = 1 

class AccountAdmin(admin.ModelAdmin): 
    inlines = [ProviderInline,] 
    ... 
式として使用サブクエリから返された1行よりも多くの
+0

,,これは誤りである私は1つのアカウントを追加した後、これは奇妙である管理者 –

+0

@DeanChristianArmadaでプロバイダー・モデルのセクションをクリックします。管理者のインラインを追加する前にこのエラーが表示されていませんか?フルトレースバックを提供できますか? – neverwalkaloner

+0

心配しないで、それは私の最終的には誤りです。解決に感謝します! –

関連する問題