我想在我的用户模型上添加一个部门字段。我正在使用SQL Server作为数据库。我在models.py
中做了以下操作class Employee(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, db_column='user')
department = models.CharField(max_length=20, blank=True)
class Meta:
db_table = 'Employee'
然后,使用存储过程可以轻松地填充User的所有字段,但是当我要填充多余的部门时,会出现错误
RelatedObjectDoesNotExist at /fetched
User has no employee.
在views.py中,我从过程中检索数据:
q = User(id=result_set[i][0], username=result_set[i][1], is_staff=False,
first_name=result_set[i][4], last_name=result_set[i][3], email=result_set[i][8])
q.set_password(result_set[i][2])
q.employee.department = 'something'
q.save()
答案 0 :(得分:0)
您可以将AbstractUser扩展到您的模型
在models.py
from django.contrib.auth.models import AbstractUser
class Employee(AbstractUser):
department = models.CharField(max_length=20, blank=True)