3
A
回答
5
子类UserAdmin,你可以从
django.contrib.auth.admin
导入它加入你添加的动作,通过reverse engineering the password_reset view使用PasswordResetForm。
从admin.site注销用户,
admin.site.register(User)
注册您的子类作为的ModelAdmin用户
下面是推动使用注销的例子(感谢克里斯·普拉特/ register):
from django.contrib.auth.forms import PasswordResetForm
from django.contrib.auth.tokens import default_token_generator
from django.conf import settings
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
class YourUserAdmin(UserAdmin):
actions = list(UserAdmin.actions) + ['send_reset_password']
def send_reset_password(modeladmin, request, queryset):
for user in queryset:
form = PasswordResetForm({'email': user.email})
form.full_clean()
form.save({
'use_https': request.is_secure(),
'token_generator': default_token_generator,
'from_email': settings.DEFAULT_FROM_EMAIL,
'email_template_name': 'registration/password_reset_email.html',
'request': request
})
admin.site.unregister(User)
admin.site.register(User, YourUserAdmin)
相关问题
- 1. 设置Django管理员默认操作
- 2. Django。打印所有管理员操作。
- 3. Django管理员DoesNotExist在/管理员/
- 4. Django管理员url.py
- 5. django管理员操作复选框没有显示在chaneglist_view
- 6. 为Django的管理员操作编写测试
- 7. 确认后Django管理员操作未执行
- 8. django管理员操作vs保存模型类
- 9. django 1.8管理员操作 - 如何自动选择所有
- 10. django管理员对所有过滤对象的操作
- 11. Django中的默认“删除选定”管理员操作
- 12. 在django管理员表单中响应用户操作?
- 13. 在模板上显示Django管理员操作
- 14. 将Django管理员操作限制为一个检查对象
- 15. Django管理员操作中的自定义错误消息
- 16. Django管理员操作为photologue图库更改
- 17. 如何将非CRUD操作添加到django管理员
- 18. 定制Django管理员操作返回无效文字错误
- 19. Django管理员操作选择复选框删除?
- 20. SonataUserAdminBundle:链接到管理员操作
- 21. CMake和图书管理员操作
- 22. 活动管理员覆盖操作
- 23. 删除操作员内存管理
- 24. Ruby on rails管理员操作
- 25. 中国的Django管理员不工作
- 26. Django管理员作为内部工具
- 27. 管理django中的列表管理员
- 28. Django - 自定义管理操作
- 29. 添加自定义Django管理操作
- 30. django的动态操作管理形式
还有n o需要猴子补丁'UserAdmin'。只需将其子类化并根据需要覆盖任何属性或方法。然后,你只需要'admin.site.unregister(UserAdmin)'和'admin.site.register(User,MyUserAdmin)'。 – 2012-03-02 15:35:35
我不确定有什么区别,可能它没有猴子补丁稍微干净。谢谢 ! – jpic 2012-03-02 15:38:14
我会做注销的东西... @jpic这使我与: 'PasswordResetForm'对象没有属性'users_cache' – Timbadu 2012-03-02 15:38:19