例如,让我们说我们有汽车和制造商,其中汽车模型包含制造商的外键(许多汽车到一个制造商)。在制造商管理页面中,当您创建新的制造商时,您可以输入制造商可能具有的任何字段,例如名称或地址。
有没有办法在制造商管理页面上创建属于给定制造商的新车?例如,系统会提示您在“制造商”页面上选择“汽车”,或者如果您所需的汽车不存在,则可以创建一个汽车。如果可以的话,有没有办法以这种方式创建属于这个制造商的任意数量的汽车?
答案 0 :(得分:0)
只要您的汽车有制造商的外键,您就可以选择Django Admin
在你的模特中:
from django.db import models
class Manufacturer(models.Model):
name = models.CharacterField(max_length=200,blank=True,null=True)
location = models.CharacterField(max_length=200,blank=True,null=True)
class Meta:
verbose_name = 'Manufacturer'
verbose_name_plural = 'Manufacturers'
def __str__(self):
return name
class Car(models.Model):
manufacturer= models.ForeignKey(Manufacturer,null=True)
model = models.CharacterField(max_length=200,blank=True,null=True)
class Meta:
verbose_name = 'Car'
verbose_name_plural = 'Cars'
def __str__(self):
return model
在您的admin.py中:
from django.contrib import admin
from models import Manufacturer
from models import Car
class ManufacturerAdmin(admin.ModelAdmin):
fieldsets = ((None, {'fields': ['name','location']}),)
class Meta:
verbose_name = 'Manufacturer'
verbose_name_plural = 'Manufacturers'
class CarAdmin(admin.ModelAdmin):
fieldsets = ((None, {'fields': ['manufacturer','model']}),)
class Meta:
verbose_name = 'Car'
verbose_name_plural = 'Cars
admin.site.register(Manufacturer,ManufacturerAdmin)
admin.site.register(Car,CarAdmin)
这应该这样做。