django drf登录模板

时间:2017-05-02 15:26:43

标签: django login django-rest-framework

我扩展了DRF的登录模板

{% extends "rest_framework/login_base.html" %}
{% block branding %}
  <h3 style="margin: 0 0 20px;">My site</h3>
{% endblock %}

使用urls.py:

urlpatterns = [
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')),
    url(r'^login', login, template_name, name='login'),
    url(r'^logout', logout, template_name, name='logout'),
...

一切正常,除非连接失败:DRF重定向到http://127.0.0.1:8000/api-auth/login/而不是http://127.0.0.1:8000/login/,我的扩展模板未使用。所以我丢失了“Django REST框架”标题的网站名称。

此致

2 个答案:

答案 0 :(得分:1)

如果您将其扩展到 project / templates / rest_framework / login.html

{% extends "rest_framework/login_base.html" %}
{% block branding %}
   <h3 style="margin: 0 0 20px;">My site</h3>
{% endblock %}

您项目的登录表单名称为“我的网站”,请勿更改。

对于统一资源定位器,您可以尝试以下操作:

    url(r'^', include('rest_framework.urls', namespace='rest_framework')),

因此重定向后的网址将类似于以下示例:

http://localhost:8000/login/
http://127.0.0.1:8000/login/

答案 1 :(得分:0)

将模板放在templates/rest_framework/

urlpatterns = [
    url(r'^auth/', include('rest_framework.urls', namespace='rest_framework')),