如何解决 __init__() 需要 1 个位置参数,但给出了 2 个

san*_*pal 1 django django-views django-rest-framework

视图.py

from django.views.generic import ListView
from django.contrib.auth.models import User
class UserListView(ListView):
    model = User
    template_name = 'infinitescroll/articles.html' 
    context_object_name = 'users' 
    paginate_by = 10
    queryset = User.objects.all()  
Run Code Online (Sandbox Code Playgroud)

网址.py

from django.contrib import admin
from django.urls import path
from infinitescroll.views import UserListView

urlpatterns = [
    path('admin/', admin.site.urls),
    path('home/',UserListView, name='home'),
]
Run Code Online (Sandbox Code Playgroud)

文章.html

<table class="table table-bordered">
  <thead>
    <tr>
      <th>Username</th>
      <th>First name</th>
      <th>Email</th>
    </tr>
  </thead>
  <tbody>
    {% for user in users %}
      <tr>
        <td>{{ user.username }}</td>
        <td>{{ user.first_name }}</td>
        <td>{{ user.email }}</td>
      </tr>
    {% endfor %}
  </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

我不知道是什么导致了错误,它在 Exception 中给出了错误位置

位置:C:\xampp\htdocs\8moviesdb\infinite\pal\lib\site-packages\django\core\handlers\base.py in _get_response, line 113

Rem*_*ich 6

在 urls.py 中UserListView,使用UserListView.as_view(). 这就是 Django 基于类的视图的工作方式。