"Cannot resolve keyword 'user' into field. Choices are: id, project_, user_"



py 如下所示

class User_(models.Model):
user_name = models.CharField(max_length=50)
user_password = models.CharField(max_length=50)
user_admin = models.BooleanField(False)
class Project_(models.Model):
project_name = models.CharField(max_length=20)
users = models.ManyToManyField(User_)
project_path = models.FilePathField()

现在我尝试在以下情况下使用many_to_many字段用户

    usr = User_.objects.get(user_name= userName) #it retrieves the correct object
    newProject = Project_(project_name=projectName)
    newProject.save()
    newProject.users.add(usr) #here is the error 
    newProject.save()

引发的错误是:"无法将关键字'用户'解析为字段。选项包括:id、project_、user_"

我无法修复该错误,有什么帮助吗?谢谢。

问题是你的表名...删除尾随下划线,它将正常工作。

Django 为 m2m 字段创建了一个中间表,称为 APP_MODEL1_MODEL2 ,并且由于您的下划线,其中会有一个双下划线,这会混淆 ORM。

相关内容

  • 没有找到相关文章

最新更新