2010-11-17 83 views
2

我需要覆盖管理面板中的添加表单。覆盖管理视图方法 - Django

我想通过编写一个视图,然后指向最终结果的管理视图来完成此任务。与此类似

东西(其中admin_basic_ass_user_view是管理视图)

@required_login 
def add_user(request): 
    if condition: 
     return admin_basic_add_user_view(request) 
    return render_to_response("admin/auth/user/add_form.html", { ... }) 

任何想法?

+0

你需要重写逻辑或只是模板? – stefanw 2010-11-17 12:55:43

+0

@stefanw:逻辑,例如密码验证 – RadiantHex 2010-11-17 13:04:47

回答

3

为什么不直接用ModelAdmin子类覆盖相关方法?毕竟,这就是为什么它是一堂课。

+0

基本上你所说的是将用户模型管理子类化并实现其中的更改?但那么我该如何彻底替换旧的管理界面? – RadiantHex 2010-11-17 13:03:35

+0

如何覆盖管理模板:http://docs.djangoproject.com/en/dev/ref/contrib/admin/#overriding-admin-templates – stefanw 2010-11-17 13:07:38

+0

我希望我可以通过覆盖模板添加高级密码验证,谢谢btw – RadiantHex 2010-11-17 13:17:15

1

添加这样的事情你urls.py

((r'^admin/auth/users/add/$', 'Project.SomeAPP.admin_views.add_user'), 

的路径必须指向你的新看法。您应该在管理界面的添加用户页面中看到新视图的结果。

编辑:我忘了提,确保您添加该行前的正常管理界面线在urls.py