Я собираю admin для приложения satchmo. Satchmo использует отношения OneToOne для расширения базовой модели Product
, и я хотел бы отредактировать все это на одной странице.
Возможно ли иметь отношение OneToOne как Inline? Если нет, то каким образом можно добавить несколько полей на заданную страницу моего администратора, которые в конечном итоге будут сохранены в отношении 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',)