我是Django新手,现在有一段时间没有完成任务。我在Django文档中搜索了一些问题,但这里没有任何内容适合我。在django中筛选用户并添加到现有组
这是我的观点:
def user_accept(request):
if request.method == 'POST':
username = AddUser.objects.filter(owner=request.user).get().user_request
group_name = Projects.objects.filter(user=request.user).get().group_url
group = Group.objects.get(name=group_name)
group.user_set.add(username)
delete_user = AddUser.objects.filter(user_request=username)
delete_user.delete()
这里是我的模型:
class AddUser(models.Model):
owner = models.ForeignKey(User)
title = models.CharField(max_length=20, default='', blank=True)
user_request = models.CharField(max_length=30, default='')
answer = models.BooleanField(default=False)
ADDUSER模型用于用户请求访问一个特定的项目。所以当用户请求一个项目时,数据被保存到AddUser模型中。 用户字段设置为项目的“所有者”,以便我可以用正确的所有者筛选每个项目。
如果所有者决定接受请求,我的user_accept视图被执行。这里的问题是,当我试图将用户名添加到组,我得到以下错误:
invalid literal for int() with base 10: 'myusername'
我曾尝试的用户名转换为int(用户名),并试图获取用户名的USER_ID但没有似乎工作...我认为它有一些事情要做,我如何过滤我的对象,但我不明白。
非常感谢您的时间,祝您新年快乐!
什么类型的字段是user_set在组表中? –