我有一个与django-admin面板有关的小问题。 我有2个型号:
from django.db import models
class Subject(models.Model):
subject = models.CharField(max_length=30, choices=[('P', 'Personal'), ('W', 'Work')])
def __str__(self):
return self.subject
class BlogPost(models.Model):
id = models.AutoField(unique=True, primary_key=True)
subject = models.ForeignKey(Subject, on_delete=models.CASCADE)
text = models.TextField(null=False)
pic = models.ImageField(upload_to='static/img/', default='static/img/no-image.png')
date = models.DateTimeField()
def __str__(self):
return self.subject
但是在管理面板中,每当我尝试创建博客帖子时,下拉菜单都不会显示任何主题的选择。我是否需要编辑管理员渲染功能?
答案 0 :(得分:2)
顺便说一下,你必须先自己添加主题,这样才能出现在你的外键选择中。你可以得到相同的结果:
class BlogPost(models.Model):
id = models.AutoField(unique=True, primary_key=True)
subject = models.CharField(max_length=30, choices=[('P', 'Personal'), ('W', 'Work')])
def __str__(self):
return self.subject
您希望ForeignKey用于什么?