为什么我无法将我的应用程序导入urls.py?

时间:2020-07-03 14:55:52

标签: python django

我正在尝试将我的应用程序视图导入urls.py中,但是我一直收到找不到模块的错误。我尝试了不同格式的import语句,但没有成功,还尝试了使用pycharm创建另一个项目和一个新应用程序但仍然出现模块未找到错误。

已安装的应用

    'milk.apps.MilkConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

urls.py

from django.conf import settings
from django.conf.urls.static import static
from django.contrib import admin
from django.urls import path, include
from main.milk import views
urlpatterns = [
    path('admin/', admin.site.urls),
    path('milk/', include('milk.urls')),
    path('accounts/', include('django.contrib.auth.urls')),
    path('signup/', views.signup_view, name='signup'),
]
if settings.DEBUG:
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

目录

milkfolder
    -capri library root(virtual env)
    -main (project dir)
        __init__.py
        settings.py
        urls.py...etc
        -milk(app)
            __init__.py
            models.py
            urls.py
            views.py...etc

还想知道是否存在创建用户注册视图的替代方法,而无需将应用程序导入到主urls.py。

2 个答案:

答案 0 :(得分:0)

这看起来很不寻常:

from main.milk import views

您为什么在这里使用main?典型的Django导入看起来更像

from milk import views

答案 1 :(得分:0)

这取决于您的Django版本,如果您放入INSTALLED_APPS 'milk.apps.MilkConfig',请确保您的milk应用中有一个名为apps.py的文件,至少包含以下内容:

# milk/apps.py
from django.apps import AppConfig


class MilkConfig(AppConfig):
    name = 'milk'

否则,只需将milk放入INSTALLED_APPS

有关更多信息,请访问doc