我很高兴昨天在这里与我的网址Adding an additional template to an existing project errors out就这个问题与某人合作,但在尝试了所有建议之后我还处于相同的情况。
我的项目名为mysite,我的应用程序是搜索。
建议将以下内容添加到我的项目urls.py
中url(r'^search/', include('search.urls')),
这样做时我给出了错误ModuleNotFoundError:没有名为' search'的模块。
我的项目urls.py如下:
from django.conf.urls import url, include
from django.contrib import admin
from django.views.generic import TemplateView
from django_filters.views import FilterView
from mysite.search.filters import UserFilter
urlpatterns = [
url(r'^$', TemplateView.as_view(template_name='home.html'), name='home'),
url(r'^search/$', FilterView.as_view(filterset_class=UserFilter, template_name='search/user_list.html'), name='search'),
url(r'^admin/', include(admin.site.urls)),
url(r'^search/', include('search.urls')),
]
我试图将以下内容添加到我的应用urls.py
from django.conf.urls import url, include
from django.contrib import admin
from django.views.generic import TemplateView
from django_filters.views import FilterView
from mysite.search.filters import UserFilter
from . import views
urlpatterns = [
url(r'^results/$', views.results, name='results'),
]
对于定义为
的结果,我有一个空视图def results(request):
return render(request, 'results.html')
当我尝试将以下POST添加到我的表单中以获得结果时,它会在第一篇文章中给出错误。当我在app.urls.py
中有结果网址时 <form action = "{% url 'results' %}" form method = "POST">
这就是我目前的应用程序结构。请帮助我走上正确的轨道。谢谢。
答案 0 :(得分:0)
您的mysite
目录位于settings.py
目录中(包含mysite.search.urls
的目录。这意味着您应该包含mysite.search
(就像您使用INSTALLED_APPS
一样在您的导入和from mysite.search.filters import UserFilter
urlpatterns = [
...
url(r'^search/', include('mysite.search.urls')),
]
)。
search
如果您的manage.py
目录位于项目目录中(包含mysite
的目录),那么您将从导入include()
和{{1}中删除INSTALLED_APPS
}。
from search.filters import UserFilter
urlpatterns = [
...
url(r'^search/', include('search.urls')),
]