【发布时间】:2014-12-29 17:56:14
【问题描述】:
我正在执行一项管理操作,试图获取 Request_Invite 的关联用户并将其标记为活动。
这是我的 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。
【问题讨论】:
标签: python django django-models django-admin django-queryset