拥有一个包含两个类的模型
class Employee(models.Model):
emp_id = models.AutoField(primary_key=True)
name = models.CharField(max_length=50)
phone_number = models.CharField(max_length=20, unique=True)
company = models.ForeignKey(Company, db_column='company_id')
class Company(models.Model):
company_id = models.AutoField(primary_key=True)
name = models.CharField(max_length=150)
phonenumber = models.CharField(max_length=20, unique=True)
在我的views.py中,我有一个接收帖子请求的方法,并使用get_or_create
注册员工,如此
employee, created = Employee.objects.get_or_create(name=emp_name, phone_number=emp_phone_number,company_id=emp_company_id)
employee.save()
但get_or_create
会导致错误
Cannot resolve keyword 'company_id' into field. Choices are:name,phone_number,company
如何将company_id保存为参考密钥?
答案 0 :(得分:1)
尝试:
company = Company.objects.get(id=company_id)
employee, created = Employee.objects.get_or_create(name=emp_name, phone_number=emp_phone_number,company=company)
employee.save()