无法导入名称“views”、.Python、Django

Mad*_*ham 4 python django

我在这个论坛上阅读了很多答案,但它们并没有解决我的问题。我将非常感谢您的帮助。

我的文件views.py返回此错误:

from . import views
ImportError: cannot import name 'views' from '__main__' (C:/Users/tymot/Desktop/weather app/env/Environemnt/the_weather/weather/views.py)
Run Code Online (Sandbox Code Playgroud)

views.py (Environemnt\the_weather\weather)

from django.shortcuts import render
from django.contrib import admin

def index(request):
    return render(request, 'weather/index.html') #returns the index.html 
Run Code Online (Sandbox Code Playgroud)

urls.py (Environemnt\the_weather\weather)

from django.urls import path
from . import views

urlpatterns = [
    path('', views.index),  #the path for our index view
]
Run Code Online (Sandbox Code Playgroud)

urls.py (Environemnt\the_weather\the_weather)

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

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('weather.urls')),
Run Code Online (Sandbox Code Playgroud)

模板(the_weather\weather\templates\weather) 仅文件index.html

目录

-the_weather
--the_weather
---__init__
---setting
---urls
---wsgi
--weather
---migrations
----__init__
---templates
----weather
-----index
---__init__
---admin
---apps
---models
---tests
---urls
---views
--db
--manage.py
Run Code Online (Sandbox Code Playgroud)

我尝试使用来解决我的问题from __future__ import absolute_import,或者homepage import views。我还尝试将views.py复制到目录模板(并修改其代码),但不幸的是它不起作用

Dru*_*lan 5

您需要在应用程序中分离viewsurls创建一个新的模块(文件) ,在您的情况下它是文件夹,然后在其中添加这些代码,并将其从 中删除,您可以在此处阅读有关它的信息以更好地理解它。urls.pyweatherviews.py

小路the_weather/weather/urls.py

from django.urls import path
from . import views

urlpatterns = [
    path('', views.index),  #the path for our index view
]
Run Code Online (Sandbox Code Playgroud)

小路the_weather/weather/views.py

from django.shortcuts import render
from django.contrib import admin

def index(request):
    return render(request, 'weather/index.html') #returns the index.html template
Run Code Online (Sandbox Code Playgroud)

  • 尝试使用“来自天气导入视图” (3认同)