Python 3.x 我怎样才能做到这一点;“基于类的视图”;工作

Python 3.x 我怎样才能做到这一点;“基于类的视图”;工作,python-3.x,django,django-views,django-templates,django-urls,Python 3.x,Django,Django Views,Django Templates,Django Urls,我一直在学习Django,现在正在研究基于类的视图。我键入的内容与官方文档和《初学者手册》中提到的内容一模一样,但代码没有按照他们解释的那样工作。请告诉我为什么这样不行 命令提示符显示“File”C:\Users\yuto1\Desktop\book\u study\Tabelog\url.py”,第9行,在 路径(“list/”,ReviewList.as_view(),name=“ReviewList”), AttributeError:“函数”对象没有“作为视图”的属性 url.py fr

我一直在学习Django,现在正在研究基于类的视图。我键入的内容与官方文档和《初学者手册》中提到的内容一模一样,但代码没有按照他们解释的那样工作。请告诉我为什么这样不行

命令提示符显示“File”C:\Users\yuto1\Desktop\book\u study\Tabelog\url.py”,第9行,在 路径(“list/”,ReviewList.as_view(),name=“ReviewList”), AttributeError:“函数”对象没有“作为视图”的属性

url.py

from django.urls import path,include
from Tabelog import views
from Tabelog.views import ReviewList

app_name = "Tabelog"

urlpatterns = [
    path("lp/", views.lp,name="lp"),
    path("list/", ReviewList.as_view(), name="ReviewList"),
    path("detail/<str:store_name>",views.detail,name="detail"),
    path("form/",views.form,name="form"),
    path("form/fix/<str:pk>",views.form_fix,name="form_fix")
]
reviewlist_list.html

<!DOCTYPE html>
{% extends 'diary/base.html' %}
{% block content %}
{% for contents in object_list%}
<article class="store">
  <h1> <a href="{% url 'Tabelog:detail' contents.store_name %}">{{contents.store_name}}</a></h1>
  <h2>{{contents.get_stars_display}}</h2>
  <span>{{contents.outline}}</span>
</article>
{% endfor %}
{% endblock %}

{%extends'日记/base.html%}
{%block content%}
{对象_列表%中的内容为%0}
{{contents.get_stars_display}
{{contents.outline}
{%endfor%}
{%endblock%}

在基于类的视图中工作时,您需要通过关键字class而不是def指定类名(用于基于函数的视图),在代码中进行更改,如下所示

class ReviewList(ListView):
    model = Tabelog
class ReviewList(ListView):
    model = Tabelog