Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django-如何正确连接URL?url(),include(),ImportError_Django_Url_Structure_Django Urls_Importerror - Fatal编程技术网

Django-如何正确连接URL?url(),include(),ImportError

Django-如何正确连接URL?url(),include(),ImportError,django,url,structure,django-urls,importerror,Django,Url,Structure,Django Urls,Importerror,我试图通过将应用程序放在“apps”文件夹下来构建我的项目,如下所示: ├── manage.py ├── mysite │   ├── apps │   │   ├── __init__.py │   │   ├── myapp1 │   │   │   ├── __init__.py │   │   │   ├── models.py │   │   │   ├── urls.py │   │   │   └── views.py │   │   └── myapp2 │   │  

我试图通过将应用程序放在“apps”文件夹下来构建我的项目,如下所示:

├── manage.py
├── mysite
│   ├── apps
│   │   ├── __init__.py
│   │   ├── myapp1
│   │   │   ├── __init__.py
│   │   │   ├── models.py
│   │   │   ├── urls.py
│   │   │   └── views.py
│   │   └── myapp2
│   │       ├── __init__.py
│   │       ├── models.py
│   │       ├── urls.py
│   │       └── views.py
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   ├── wsgi.py
在mysite/url.py中:

from django.conf.urls import patterns, include, url

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    url(r'^myapp1/', include('mysite.apps.myapp1.urls')),
    url(r'^mysite/apps/myapp2/', include('myapp2.urls')),
    url(r'^admin/', include(admin.site.urls)),
)
这有点问题:

    url(r'^myapp1/', include('mysite.apps.myapp1.urls')),
    url(r'^mysite/apps/myapp2/', include('myapp2.urls')),
我无法正确连接myapp1或myapp2,Django给了我“ImportError…没有名为myapp1的模块…”任何帮助?

可能是这样的:

include('mysite.apps.myapp1.urls')),
更新

您可以尝试:


mysite
dir

中添加一个文件
\uuuu init\uuuu.py
,相对路径中缺少一个级别:

url(r'^mysite/apps/myapp2/', include('apps.myapp2.urls')),
myapp1
看起来应该对我有用


请注意,比较您试图包含
myapp1
myapp2
的方式,您可能对结构有点误解。URL与代码布局无关。这是完全正确的:

url(r'^zimzam/allthethings/', include('apps.myapp2.urls')),

这就是我尝试过的:如果myapp1文件夹与manage.py处于同一级别,那么url(r“^myapp1/”,include('myapp1.url')将work@HowardLee我更新了我的answser,你可以试试,希望它能帮助你谢谢你的提示,Izkata。但是,我尝试了您的解决方案,编辑了sdnsite/url.py,它仍然让人感到恐惧。我的目录结构:My sdnsite/url.py:Django错误:我知道origin/url.py没有问题,因为如果我将应用程序放在manage.py级别,它会正常运行。@HowardLee实际上,问题可能是。举个例子:每当他们使用
include()
,它都在一个普通元组中,而不是在对
url()
的调用中。行吗?问题解决了!是的,你说得对,myapp1可以工作。这实际上是myapp1.url.py的问题。我有“从myapp1导入视图”而不是“导入视图”。我不应该有“从myapp1导入视图”,因为它将在“myapp1”中查找另一个“myapp1”文件夹。我打印了python的加载路径,并能够跟踪问题。