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()
引发的错误是: “无法将关键字'user'解析为字段。选项包括:id,project_,user _”
我无法修复该错误,有什么帮助吗? 感谢。
答案 0 :(得分:1)
问题是你的表名...删除尾随的下划线,它会正常工作。
Django为m2m字段创建一个名为APP_MODEL1_MODEL2
的中间表,由于你的下划线,那里会有一个双下划线,这会让ORM感到困惑。