2
我有兩個模型,'產品'和'範圍',要連接到許多領域。 '產品'類是在我沒有寫的應用程序中,所以它不能被修改(我可以編輯它的模式)。我想讓'Ranges'a'Product'在管理員中可以編輯,我想用一個FilteredSelectMultiple而不是內嵌管理員來完成。在Django的管理員如何添加一個字段的ManyToManyField的背面
簡化 'models.py':
class Product(models.Model):
name = models.CharField(max_length=64)
#etc...
#I can't modify this class
class Range(models.Model):
name = models.CharField(max_length=32)
products = models.ManyToManyField(Product, related_name='ranges')
和admin.py:
class ProductAdmin(admin.ModelAdmin):
# What do I put here to get a multi-select box for ranges?
# Preferrably with one of those 'add' buttons to popup a window
# to add ranges.
如果我可以修改我的產品使用現有的通過表,這可以把一個ManyToManyField就可以了工作正常,但據說我不能(或不會,因爲它會使升級到外部應用程序真正的痛苦)。
在此先感謝您的幫助! (PS我希望在這裏很容易看到爲什麼我不想使用內聯管理員表單 - 這使得UI不必要的複雜)。
非常感謝,我想出了類似的東西,打算把它作爲一個答案,但現實生活中的方式。 – DaedalusFall 2013-11-13 18:05:22