繁体   English   中英

/users/login/ __init__() 的 TypeError 采用 1 个位置参数,但给出了 2 个

[英]TypeError at /users/login/ __init__() takes 1 positional argument but 2 were given

我目前正在编写“Python Crash course”一书中的教程。

本教程是关于使用 Django 创建“学习日志”Webapp。 该应用程序的想法是允许用户: 1. 创建他们所了解的“主题” 2. 将“条目”添加到这些主题中,描述他们所学到的特定于这些主题的详细信息

我目前卡在登录页面并在运行时收到错误

http://localhost:8000/users/login/

网址.py

    from django.conf.urls import url
    # Importing the default login view provided by Django
    from django.contrib.auth.views import LoginView
    from .import views 
    app_name = 'users'
    urlpatterns =[
    # Login page
    url(r'^login/$', LoginView , {'template_name':'users/login.html'},name = 'login'), 
                 ]

登录.html

    {% extends "learning_logs/base.html" %}

    {% block content %}
    {% if form.errors %}
    <p> Your username and password didn't match.Please try again. </p>
    {% endif %}

    <form method="post" action="{%url 'users:login' %}">
    {%csrf_token %}
    {{form.as_p}}
    <button name="submit">log in</button>
    <input type="hidden" name="next" value="{%url 'learning_logs:index' %}"/>
    </form>


   {% endblock content %}

底座.html

    <p>
      <a href="{% url 'learning_logs:index' %}">Learning Log</a> -
      <a href="{% url 'learning_logs:topics'%}">Topics</a> -
      {% if user.is_authenticated %}
        Hello,{{user.username}}.
     {% else %}
       <a href="{% url 'users:login' %}">log in</a>
     {% endif %}
   </p>

   {% block content %}{% endblock content %}

LoginView是一个基于类的视图,您可以使用.as_view(…) [Django-doc]urls.py中使用它。 您可以将template_name作为参数传递给.as_view(…)

url(r'^login/$', LoginView.as_view(template_name='users/login.html'), name='login'),

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM