小编BAT*_*MAN的帖子

join() 参数必须是 str 或字节,而不是“dict”——在 Django 中创建具有多表继承的表单

我正在尝试为模型创建一个表单,该表单继承自 Django auth.User 类

我得到了这个问题。有没有更好的方法来实现它?

#models.py

class Teacher(User):
    #tutor = models.OneToOneField(User, on_delete=models.CASCADE, parent_link=True)
    department = models.CharField(max_length=100)
    contact_no = models.BigIntegerField()

    def __str__(self):
        return "%s %s" % (self.tutor.first_name, self.tutor.last_name)

#Forms.py
class TeacherForm(forms.ModelForm):
    class Meta:
        model = Teacher
        fields = ('username', 'first_name', 'last_name', 'email', 'contact_no', 'department')

#views.py
def new_teacher(request):
    form = TeacherForm()
    return render(request, {'form': form})
Run Code Online (Sandbox Code Playgroud)

Django 版本:2.2.3
异常类型:TypeError

异常值:
join() 参数必须是 str 或 bytes,而不是 'dict'

================================================== ======================

追溯

Internal Server Error: /account/newteacher/ Traceback > (most recent call last): File > "/home/zed/PycharmProjects/untitledisbesttitle/venv/lib/python3.6/site-packages/django/core/handlers/exception.py", > …
Run Code Online (Sandbox Code Playgroud)

python django django-models django-forms

4
推荐指数
1
解决办法
7687
查看次数

标签 统计

django ×1

django-forms ×1

django-models ×1

python ×1