Python 在/project/create'处输入错误;账户';对象是不可编辑的
我面临一个问题。我无法为用户分配使用多对多字段的项目 详情如下 这是我的模特Python 在/project/create'处输入错误;账户';对象是不可编辑的,python,django,Python,Django,我面临一个问题。我无法为用户分配使用多对多字段的项目 详情如下 这是我的模特 from django.conf import settings from django.db import models from workingSkills.models import Domain,Environment,ToolsAndTechnology class Project(models.Model): profile_of = models.ManyToManyField(settings
from django.conf import settings
from django.db import models
from workingSkills.models import Domain,Environment,ToolsAndTechnology
class Project(models.Model):
profile_of = models.ManyToManyField(settings.AUTH_USER_MODEL, null=False)
project_title = models.CharField(max_length=100)
domain = models.ManyToManyField(Domain)
environment = models.ManyToManyField(Environment)
tools_and_technology = models.ManyToManyField(ToolsAndTechnology)
这里是views.py
@login_required(login_url= 'login')
def createProject(request):
form = createProjectForm()
print(request.user)
if request.method == 'POST':
form = createProjectForm(data=request.POST)
if form.is_valid():
user = Account.objects.filter(request.user)
instance = form.save(commit=False)
#instance.save()
instance.profile_of.set(user)
instance.save()
return HttpResponseRedirect('createprofile')
form = createProjectForm
context = {'form': form}
return render(request, 'project/create_project.html', context)
这是错误图像像这样更改,您必须指定要筛选的列
from:
Account.objects.filter(request.user)
to:
Account.objects.filter(user=request.user)
您在该查询集中犯了一个输入错误
将行中的查询集“set”更改为“add”谢谢。。。我现在已通过筛选步骤。但是在这里得到错误实例.profile\u of.set(user)更新你的问题屏幕截图然后我对我的原始答案添加一些更改让我知道它是否有效