Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将Django管理员登录集成为REST框架登录_Python_Django - Fatal编程技术网

Python 将Django管理员登录集成为REST框架登录

Python 将Django管理员登录集成为REST框架登录,python,django,Python,Django,我想使用管理员页面作为2节 管理站点 Rest框架API 登录管理员后,我也必须访问RESTAPI 项目Url为 urlpatterns = patterns('', url(r'^admin/', include(admin.site.urls)), url(r'^admin/', include('snippets.urls')), url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')) )

我想使用管理员页面作为2节

  • 管理站点
  • Rest框架API
  • 登录管理员后,我也必须访问RESTAPI

    项目Url为

    urlpatterns = patterns('',
    url(r'^admin/', include(admin.site.urls)),
    url(r'^admin/', include('snippets.urls')),
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')) )
    
    我的应用程序Url是

    urlpatterns = [
        url(r'^snippets/$', views.snippet_list),]
    

    你可以这样做。在app
    url.py中,通过包装
    login\u required
    decorator

    from django.contrib.auth.decorators import login_required
    
    urlpatterns = [
        url(r'^snippets/$', login_required(views.snippet_list)),]
    
    您需要使用实函数而不是它们的名称。(现在可以了)


    使用
    中间件
    ,检查用户是否通过了
    身份验证

    您可以为此目的添加一个中间件是否有任何示例?@itzmeontv请查看我的问题中的更改否,仍然有相同的问题我已经更改了我的url结构。见我的问题。如果我转到127.0.0.1:8000/admin,那么我可以查看/snippets,但是如果我直接转到/snippets,它会询问其他登录窗口而不是admin login您的url.py现在看起来很奇怪<代码>/admin
    用于这两种情况。缩进是什么?实际上我希望rest api的url为/admin/snippets,因为它必须使用管理员身份验证,然后将
    LOGIN\u url=
    /admin/LOGIN/url/”放在settings.py中。我认为类似于,
    /admin/accounts/login/
    。检查一下