部署的django应用程序出现间歇性但频繁的NoReverseMatch错误
我在部署了一个应用程序 这是一个运行Ubuntu14.04LTS的colo 如果点击此按钮,您可能会看到一个空白页面,上面写着“服务器错误(500)”,而没有其他内容。您可能会遇到NoReverseMatch异常。如果您继续获取该URL,它将起作用。可能需要3次,但似乎不超过5次。最终,它总是有效的 奇怪 我依赖于我正在构建的两个包。我多次移动它们,现在它们位于:部署的django应用程序出现间歇性但频繁的NoReverseMatch错误,django,python-2.7,django-deployment,Django,Python 2.7,Django Deployment,我在部署了一个应用程序 这是一个运行Ubuntu14.04LTS的colo 如果点击此按钮,您可能会看到一个空白页面,上面写着“服务器错误(500)”,而没有其他内容。您可能会遇到NoReverseMatch异常。如果您继续获取该URL,它将起作用。可能需要3次,但似乎不超过5次。最终,它总是有效的 奇怪 我依赖于我正在构建的两个包。我多次移动它们,现在它们位于: /usr/local/lib/python2.7/dist-packages 及 我不必更改settings.py文件 $ cat
/usr/local/lib/python2.7/dist-packages
及
我不必更改settings.py文件
$ cat urls.py
from django.conf.urls import patterns, include, url
from django.conf import settings
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
url(r'^', include('calaccess_campaign_browser.urls')),
url(r'^admin/', include(admin.site.urls)),
url(r'^static/(?P<path>.*)$', 'django.views.static.serve', {
'document_root': settings.STATIC_ROOT,
'show_indexes': True,
}),
)
及
$cat/usr/local/lib/python2.7/dist-packages/calaccess\u campaign\u browser/url.py
从django.conf.url导入模式,包括,url
从tastypie.api导入api
从django.views.generic.base导入重定向视图
从calaccess\u campaign\u browser.api导入文件资源,文件资源
从calaccess\u campaign\u浏览器导入视图
从calaccess\u campaign\u browser.views导入搜索
从calaccess\u campaign\u browser.views导入标识
从django.views.generic导入模板视图
#设置REST服务的端点。
#
#用法:
#
#http://:///api/v1/
#http://:///api/v1/filer/
#http://:///api/v1/filling/?filling\u id\u raw=1852192'
#
v1_api=api(api_name='v1')
v1_api.register(FilerResource())
v1_api.register(FilingResource())
#设置web应用程序的端点。
#
urlpatterns=模式(
'',
url(r'^$',重定向视图.as_视图(url='/latest/',permanent=False)),
网址(
r“^latest/$”,
views.LatestFilingView.as_view(),
name='latest_list'
),
网址(
r“^filers/$”,
RedirectView.as_视图(url='/filers/1/',permanent=False),
name=“文件管理器列表”
),
网址(
r“^filers/(?P[\d++)/$”,
views.FilerListView.as_view(),
name='filer\u页面'
),
网址(
r“^filer/(?P\d+/$”,
views.FilerDetailView.as_view(),
name='filer\u详细信息'
),
网址(
r'^committee/(?P\d+)/捐款/(?P[\d+])/$,
views.committeecontributeview.as_view(),
姓名=‘委员会贡献名单’,
),
网址(
r'^committee/(?P\d+)/支出/(?P[\d+])/$,
views.committeeeexpenditureview.as_view(),
name='committee'支出清单',
),
网址(
r'^committee/(?P\d+)/文件/(?P[\d+])/$,
views.CommitteeFilingView.as_view(),
姓名=‘委员会备案名单’,
),
网址(
r“^committee/(?P\d+/$”,
views.CommitteeDetailView.as_view(),
name='committee\u detail'
),
网址(
r'^file/(?P\d+/$),
views.FilingDetailView.as_view(),
name='filling_detail'
),
网址(
r'^contribution/(?P\d+/$),
views.ContributionDetailView.as_view(),
name='contribution\u detail'
),
网址(
r'^支出/(?P\d+/$),
views.ExpenditureDetailView.as_view(),
名称=‘支出详情’,
),
url(r“^search/$”,search.SearchList.as_view(),name='search-list'),
网址(
r“^search/contribs by name/$”,
search.search\u contribs\u by\u name,
name='search-contribs-by-name'
),
网址(
r“^parties/$”,
views.PartyListView.as_view(),
name='party\u list'
),
网址(
r“^identies/$”,
identies.identiesList.as_view(),
name='identies-list'
),
网址(
r“^identies/identies by name/$”,
identifications.search\u identifications\u by\u name,
name='search-identies-by-name'
),
#原料药
url(r“^api/”,包括(v1_api.url)),
网址(
r“^robots\.txt$”,
TemplateView.as\u视图(
模板\u name='robots.txt',
内容(type='text/plain')
),
)
能否显示calaccess\u活动浏览器/url.py
文件?还有两件事-您是否在安装的应用程序中安装了软件包calaccess\u campaign\u browser
?您在calaccess\u campaign\u浏览器中是否有\uuu init\uuuuuuuuuuuuuuupy
?是的,部署的calaccess\u campaign\u浏览器应用程序中有一个init.py文件。是的,它存在于已安装的应用程序中。见上文。请参见上面的calaccess_campaign_browser/url.py文件。
$ cat urls.py
from django.conf.urls import patterns, include, url
from django.conf import settings
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
url(r'^', include('calaccess_campaign_browser.urls')),
url(r'^admin/', include(admin.site.urls)),
url(r'^static/(?P<path>.*)$', 'django.views.static.serve', {
'document_root': settings.STATIC_ROOT,
'show_indexes': True,
}),
)
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.humanize',
'calaccess_raw',
'calaccess_campaign_browser',
'tastypie',
)
$ cat /usr/local/lib/python2.7/dist-packages/calaccess_campaign_browser/urls.py
from django.conf.urls import patterns, include, url
from tastypie.api import Api
from django.views.generic.base import RedirectView
from calaccess_campaign_browser.api import FilerResource, FilingResource
from calaccess_campaign_browser import views
from calaccess_campaign_browser.views import search
from calaccess_campaign_browser.views import identities
from django.views.generic import TemplateView
# Set up the endpoints for the REST service.
#
# Usage:
#
# http://<hostname>:<port>//api/v1/
# http://<hostname>:<port>//api/v1/filer/
# http://<hostname>:<port>//api/v1/filing/?filing_id_raw=1852192'
#
v1_api = Api(api_name='v1')
v1_api.register(FilerResource())
v1_api.register(FilingResource())
# Set up the endpoints for the web application.
#
urlpatterns = patterns(
'',
url(r'^$', RedirectView.as_view(url='/latest/', permanent=False)),
url(
r'^latest/$',
views.LatestFilingView.as_view(),
name='latest_list'
),
url(
r'^filers/$',
RedirectView.as_view(url='/filers/1/', permanent=False),
name="filer_list"
),
url(
r'^filers/(?P<page>[\d+]+)/$',
views.FilerListView.as_view(),
name='filer_page'
),
url(
r'^filer/(?P<pk>\d+)/$',
views.FilerDetailView.as_view(),
name='filer_detail'
),
url(
r'^committee/(?P<pk>\d+)/contributions/(?P<page>[\d+]+)/$',
views.CommitteeContributionView.as_view(),
name='committee_contribution_list',
),
url(
r'^committee/(?P<pk>\d+)/expenditures/(?P<page>[\d+]+)/$',
views.CommitteeExpenditureView.as_view(),
name='committee_expenditure_list',
),
url(
r'^committee/(?P<pk>\d+)/filings/(?P<page>[\d+]+)/$',
views.CommitteeFilingView.as_view(),
name='committee_filing_list',
),
url(
r'^committee/(?P<pk>\d+)/$',
views.CommitteeDetailView.as_view(),
name='committee_detail'
),
url(
r'^filing/(?P<pk>\d+)/$',
views.FilingDetailView.as_view(),
name='filing_detail'
),
url(
r'^contribution/(?P<pk>\d+)/$',
views.ContributionDetailView.as_view(),
name='contribution_detail'
),
url(
r'^expenditure/(?P<pk>\d+)/$',
views.ExpenditureDetailView.as_view(),
name='expenditure_detail',
),
url(r'^search/$', search.SearchList.as_view(), name='search-list'),
url(
r'^search/contribs-by-name/$',
search.search_contribs_by_name,
name='search-contribs-by-name'
),
url(
r'^parties/$',
views.PartyListView.as_view(),
name='party_list'
),
url(
r'^identities/$',
identities.IdentitiesList.as_view(),
name='identities-list'
),
url(
r'^identities/identities-by-name/$',
identities.search_identities_by_name,
name='search-identities-by-name'
),
# API
url(r'^api/', include(v1_api.urls)),
url(
r'^robots\.txt$',
TemplateView.as_view(
template_name='robots.txt',
content_type='text/plain')
),
)