我正在做一个管理操作,试图获取Request_Invite的关联用户并将其标记为活动。Django管理操作:'QuerySet'对象没有'user'属性
这里是我的Admin.py:
def activate_user(modeladmin, reqeust, queryset):
queryset.user.update(active=True)
queryset.update(accepted=True)
activate_user.short_description = "Mark User as Active"
class Request_InviteAdmin(admin.ModelAdmin):
list_display = ['user', 'accepted']
ordering = ['user']
actions = [activate_user]
class Meta:
model = Request_Invite
admin.site.register(Request_Invite, Request_InviteAdmin)
Models.py:
from django.contrib.auth.models import User
class Request_Invite(models.Model):
user = models.OneToOneField(User)
accepted = models.BooleanField(default=False)
def __unicode__(self):
return u"%s's request" % (self.user)
当试图运行在管理后台的动作,我得到的错误:
'QuerySet' object has no attribute 'user'
其中是指行queryset.user.update(active=True)
我很难找出如何正确查询关联的user
并将其标记为active
在管理操作功能。
不,我得到:“用户”对象有没有属性“更新” – ApathyBear 2014-11-03 09:36:13
我固定我的答案。您可以再试一次 – ZZY 2014-11-03 13:46:40
虽然这不会引发错误,但不一定可行:https://app.box.com/s/lsyotuafv878lic1mkul – ApathyBear 2014-11-03 20:30:47