我的管理员面板中有一个看似无害但非常麻烦的错误:
它错误地产生了输出"教师" (双ss)我无法从我的代码中看出为什么会这样:
所以教师应用中的models.py是:
class Teachers(models.Model):
#this is what an album is going to be made of
email=models.CharField(max_length=250)
school_name=models.CharField(max_length=500)
password=models.CharField(max_length=100)
class_name=models.CharField(max_length=100)
admin.py文件包含:
from django.contrib import admin
from main.models import Teachers
# Register your models here.
admin.site.register(Teachers)
知道为什么在管理面板中生成这个?
MAIN 教师添加/更改
来自哪里的双ss以及如何摆脱它???
基于答案的更新
更新:有趣的是从下面的答案中注意到必须使用单数。但是,我确实更改了我的代码,现在出现以下错误:
错误
在admin.py中 来自main.models导入教师 导入错误:无法导入姓名'教师'
admin.py文件
from django.contrib import admin
from main.models import Teacher
# Register your models here.
admin.site.register(Teacher)
models.py
from django.db import models
# Create your models here.
class Teacher(models.Model):
#this is what an album is going to be made of
email=models.CharField(max_length=250)
school_name=models.CharField(max_length=500)
password=models.CharField(max_length=100)
class_name=models.CharField(max_length=100)
#You need this for meta data purposes. This allows you to reference the post (otherwise it will just print the object which doesn't mean much)
#You need this for meta data purposes. This allows you to reference the post (otherwise it will just print the object which doesn't mean much)
......问题解决了。我没有在导入模型中调用该应用程序(main.models已经编写而不是teacher.models)。
感谢您提供以下答案
答案 0 :(得分:2)
默认情况下,Django希望您的模型具有单数名称,即Teacher
。默认情况下,它还会将s
附加到您的模型名称,以便在管理员中显示它。这可以从inside your model itself配置。
答案 1 :(得分:1)
Django管理员自动添加“s”以使模型复数。建立模型Teacher
可能是有意义的。否则,您可以告诉管理员您想要复数形式:
class Teachers(models.Model):
class Meta:
verbose_name_plural = "teachers"
email=models.CharField(max_length=250)
...