我要做一个图书分类
一共有二级类:
图书第一类别表(id(主键), name)
图书第二类别表(id(表), fist_type(外键到第一类别表), name)
还有一个图书信息表
(只外键了第二类别表)
想在xadmin后台添加图书信息的时候, 先选择第一类别,在选择第二类别
from django.db import models
# Create your models here.
class BookFirstType(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField('名称', max_length=200)
def __str__(self):
return self.name
class Meta:
verbose_name = "图书第一类别"
verbose_name_plural = verbose_name
class BookSecondType(models.Model):
id = models.AutoField(primary_key=True)
first_type = models.ForeignKey(BookFirstType, on_delete=models.CASCADE, verbose_name='第一类别') # 级联删除, 如果父表中的记录被删除,则子表中对应的记录自动被删除
name = models.CharField('名称', max_length=200)
def __str__(self):
return self.name
class Meta:
verbose_name = "图书第二类别"
verbose_name_plural = verbose_name
class BookInfo(models.Model):
id = models.AutoField(primary_key=True)
second_type = models.ForeignKey(BookSecondType, on_delete=models.CASCADE, verbose_name='第二类别')
name = models.CharField('书名', max_length=200)
author = models.CharField('作者', max_length=200)
note = models.TextField('简介', max_length=10000)
money = models.CharField('价格', max_length=200)
def __str__(self):
return self.name
class Meta:
verbose_name = "图书信息"
verbose_name_plural = verbose_name