首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在给定模型的Django管理页面中,是否可以创建一个或多个将原始给定模型作为外键字段的模型?

在给定模型的Django管理页面中,是否可以创建一个或多个将原始给定模型作为外键字段的模型?
EN

Stack Overflow用户
提问于 2016-06-21 06:59:48
回答 1查看 56关注 0票数 0

例如,假设我们有汽车和制造商,其中汽车模型包含制造商的外键(多辆汽车对应一个制造商)。在制造商管理页面中,当您创建一个新的制造商时,您可以输入制造商可能具有的任何字段,例如名称或地址。

有没有办法也能够在制造商管理页面上创建属于给定制造商的新车?例如,系统将提示您在制造商页面上选择一辆汽车,或者如果您想要的汽车不存在,则可以创建一辆。如果这是可能的,有没有办法以这种方式创建属于该制造商的任意数量的汽车?

EN

回答 1

Stack Overflow用户

发布于 2016-06-21 07:14:25

只要你的车有制造商的外键,你就可以在Django Admin中选择

在您的模型中:

代码语言:javascript
复制
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中:

代码语言:javascript
复制
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)

这个应该可以了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37933126

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档