首页 > [已解决]重写django中的auth,关于url的设置既可以是django.xx也可以是不带django.xx,效果一样?

[已解决]重写django中的auth,关于url的设置既可以是django.xx也可以是不带django.xx,效果一样?

django项目名字为seahub

项目结构如下:

虽然重写了auth,但是并不作为app好像,因为app列表里面没有写auth

在github上搜seahub,有源代码


重写后auth没有用这个url


谢邀

但若不应这么写,如何才能指向那个view呢?一般情况下,整个django项目只有django根目录在搜索路径中


这样写是为了复用django.contrib.auth原有的视图,毕竟人家做好的你没必要再做一遍


这个是由patterns的使用方法决定的:

  1. 传字符串
    需要保证字符串中的路径是可以被python import的。Django采用的是importlib中的import_module进行模块的动态导入。

  2. 传视图函数
    你的代码也可以写成如下格式:

from django.contrib.auth.views import login
urlpatterns = patterns('',
    (r'^login/$', login),
    # ...
)

auth 模块位于django.contrib.auth 路径下,所以需要这样导入。当然约定俗成的导入法一般是这样
from django.contrib.auth import views as auth_view


调用的是django库自带的auth模块,这个本身就是一个app模块,你可以看下django源码的contrib/auth/这个目录。

【热门文章】
【热门文章】