将 Django 与 Python 一起使用 - 尝试导入时未定义视图

Using Django with Python - Views is not defined when trying to import

我正在使用 Django 和 Python 上的以下 YT 视频,因为我希望制作我的第一个应用程序并尝试学习 Django 的工作原理:

https://www.youtube.com/watch?v=F5mRW0jo-U4

我正在努力向名为 Pages 的应用程序添加新视图并尝试从该应用程序导入视图,但由于某种原因不断收到:

NameError: 'views' is not defined. I am sure this is something small that I am missing due to my newness with python in general and importing. Here is my current code:

from django.contrib import admin
from django.urls import path

#from Pages import views
from Pages.views import homepage_view, toybox_view, lounge_view, gym_view

urlpatterns = [
    path('', views.homepage_view, name='home'),
    path('toybox/', views.toybox_view, name='toybox'),
    path('lounge/', views.lounge_view, name='lounge'),
    path('gym/', views.gym_view, name='gym'),
    path('admin/', admin.site.urls),

]

第二个 'from' 语句不起作用 - 注释掉的语句确实起作用,我只是想更具体地说明我的导入。我有一个 'src' 文件夹,其中包含我的项目 - DogtopiaWeb 和两个应用程序 Dogs 和 Pages。 Pages 应用程序内部是我尝试使用上述 from 语句导入的 views.py。

知道为什么它无法识别 Pages 应用程序目录中的 views.py 吗?我正在将它导入 DogopiaWeb 项目中的 urls.py。

第一个屏幕截图是我的根目录 manage.py 以及两个应用程序和主项目。第二个屏幕截图在“Pages”应用程序内部,显示导入时无法识别的 views.py 文件。

谢谢!

问题是您的应用 Pages 不需要 views,您已经在导入特定视图:

from Pages.views import homepage_view, toybox_view, lounge_view, gym_view

因此请使用以下内容:

urlpatterns = [
    path('', homepage_view, name='home'),
    path('toybox/', toybox_view, name='toybox'),
    path('lounge/', lounge_view, name='lounge'),
    path('gym/', gym_view, name='gym'),
    path('admin/', admin.site.urls),

]

或者如果你想使用 views.name_of_your_view,你需要导入你注释的行 from Pages import views 并删除其他行。