satchmoアプリケーションの管理者をまとめています。SatchmoはOneToOneリレーションを使用して基本Product
モデルを拡張しているので、すべてを1ページで編集したいと思います。
インラインとしてOneToOneリレーションを持つことは可能ですか?そうでない場合、最終的にOneToOneリレーションに保存される管理者の特定のページにいくつかのフィールドを追加するための最良の方法は何ですか?
例えば:
class Product(models.Model):
name = models.CharField(max_length=100)
...
class MyProduct(models.Model):
product = models.OneToOne(Product)
...
管理者のためにこれを試しましたが、機能せず、外部キーを期待しているようです。
class ProductInline(admin.StackedInline):
model = Product
fields = ('name',)
class MyProductAdmin(admin.ModelAdmin):
inlines = (AlbumProductInline,)
admin.site.register(MyProduct, MyProductAdmin)
これはこのエラーをスローします:<class 'satchmo.product.models.Product'> has no ForeignKey to <class 'my_app.models.MyProduct'>
これを行う唯一の方法はカスタムフォームですか?
編集:フィールドを直接追加するために次のコードを試しました...これも機能しません:
class AlbumAdmin(admin.ModelAdmin):
fields = ('product__name',)