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

发布于 2022-09-03 08:07:21 字数 667 浏览 21 评论 0

clipboard.png

django项目名字为seahub

项目结构如下:

clipboard.png

clipboard.png

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

在github上搜seahub,有源代码

clipboard.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

素手挽清风 2022-09-10 08:07:21

重写后auth没有用这个url

对你再特殊 2022-09-10 08:07:21

谢邀

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


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

公布 2022-09-10 08:07:21

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

固执像三岁 2022-09-10 08:07:21

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

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

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

from django.contrib.auth.views import login
urlpatterns = patterns('',
    (r'^login/
, login),
    # ...
)
左耳近心 2022-09-10 08:07:21

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文