Son zamanlarda Django 1.2.1'e yükselttim çünkü özellikle have basic many-to-many inline fields yeteneğiyle ilgileniyordum.Django 1.2.1 Birçok Alana Çok Sayıda Inline Admin
İlk modeller: şöyle yönetici kullanırken
class Ingredient(models.Model):
name = models.TextField()
class Recipe(models.Model):
ingredients = models.ManyToManyField(Ingredient)
Başlangıç Yönetici: Ben bazı ekstra ile, normalde bir ManyToMany sahada görürdünüz aynı form oldu ne var
class IngredientInline(admin.TabularInline):
model = Recipe.ingredients.through
class RecipeOptions(admin.ModelAdmin):
inlines = [IngredientInline,]
exclude = ('ingredients',)
admin.site.register(Recipe,RecipeOptions)
satırlar. Bir Hammadde ModelForm gibi ek parametreler ile tedarik yardımcı olmadı. Model = Foo.manyfields.through ile temel ModelForm ilişkilerinde bir sorun olabileceğinden şüphelenerek, bir aracı modelin işe yarayıp yaramayacağına karar verdim.
Yeni modeller: Şimdi üzerinden bir çalışma satır içi form görüntüler
class RecipeJoin(models.Model):
pass
class Recipe(models.Model):
ingredients = models.ManyToManyField(RecipeJoin,through='Ingredient')
class Ingredient(models.Model):
name = models.TextField()
test = models.ForeignKey(RecipeJoin,null=True,blank=True,editable=False)
Yeni yönetici:
class IngredientInline(admin.TabularInline):
model = Recipe.ingredients.through
class RecipeOptions(admin.ModelAdmin):
inlines = [IngredientInline,]
admin.site.register(Recipe,RecipeOptions)
Açıkçası bu benim kullanmak istiyorum kesmek değildir. (A) Tamamen yeni bir BasicInline formu ve şablonu oluşturmadan veya (b) bir aracı (veya genel yönetici) modeline koymadan, satır içi biçimiyle görüntülenecek çok-yollu bir ilişki elde etmenin bir yolu var mı?
TIA. (Ayrıntılardan dolayı özür dilerim, bu benim ilk mesajımdır, bu yüzden eksiksiz olmak istedim).
Evet, sonunda bir ForeignKey'e yerleşmeye karar verdim, ama aslında bir ManyToMany alanıyla çalışacak bir inline form arıyordum çünkü django 1.2 belgelerinin söylediği gibi ... Yine de bu işlerin her ikisi de teşekkürler! – Katharine