我有一个姜戈-奥斯卡的项目,我正在做。我一直在寻找解决这个问题的方法。虽然,我在这里遇到了类似的问题,但我仍然无法解决这个问题。
我正在尝试创建其他页面,如“关于”和“联系人”。我已经检查了仪表板的页面创建,但似乎不能确切地做我想要的。我希望能够将这些页面放在页脚区域。我能够将这些在仪表板上创建的页面显示到我的页脚,但它似乎很简单,只显示文本。想知道我能不能做得更多。
我已经在我的应用文件夹中创建了一个应用。下面是文件夹结构:


这是我的env安装-
pip冻结requirements.txt
Babel==2.3.4<
beautifulsoup4==4.5.1
colorama==0.3.7
coverage==3.7.1
coveralls==0.4.4
detox==0.10.0
Django==1.9.12
django-appconf==1.0.2
django-compressor==1.6
django-countries==4.0
django-debug-toolbar==1.5
django-extra-views==0.6.4
django-haystack==2.5.1
django-localflavor==1.3
django-nose==1.4.2
django-oscar==1.3
-e git://github.com/tangentlabs/django-oscar- paypal.git@76542cefa67170b10694ab431a0b35408d99b16e#egg=django_oscar_paypal
django-static-precompiler==1.5
django-tables2==1.0.7
django-treebeard==4.1.0
django-webtest==1.7.7
django-widget-tweaks==1.4.1
docopt==0.6.2
enum-compat==0.0.2
enum34==1.1.6
eventlet==0.20.0
factory-boy==2.7.0
fake-factory==0.7.2
flake8==2.2.3
funcsigs==1.0.2
greenlet==0.4.11
ipaddress==1.0.17
mccabe==0.5.2
mock==1.0.1
mod-wsgi==4.5.11
nose==1.3.7
pbr==1.10.0
pep8==1.7.0
phonenumbers==7.7.5
Pillow==3.4.2
pinocchio==0.4.1
pluggy==0.3.1
purl==1.3
py==1.4.31
pycountry==16.11.27.1
pyflakes==1.3.0
pytest==3.0.1
pytest-cov==2.3.1
pytest-django==3.0.0
python-dateutil==2.6.0
pytz==2016.10
PyYAML==3.12
requests==2.12.3
six==1.10.0
sorl-thumbnail==12.4a1
sqlparse==0.2.2
tox==2.1.0
Unidecode==0.4.19
virtualenv==15.1.0
waitress==1.0.1
WebOb==1.6.3
WebTest==2.0.16`下面是我的应用程序views.py
from django.http import HttpResponse
from django.core.urlresolvers import reverse
def about(request):
return HttpResponse(request, "my about page", {})
def contacts(request):
return HttpResponse(request, "my contact page", {})这里是apps.myapp urls.py
from django.conf.urls import url
from django.conf.urls import patterns, include, url
from django.conf.urls.i18n import i18n_patterns`
from . import views
from apps.myapp import views
urlpatterns = patterns ('',
url(r'^en-gb/contacts/', views.contacts, name='contacts'),
url(r'^/about/', views.about, name='about'),
)下面是我的站点(根目录) urls.py
from django.conf.urls import patterns, include, url
from django.conf.urls.i18n import i18n_patterns
from django.conf import settings
from django.contrib import admin
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.conf.urls.static import static
from apps.app import application
from paypal.payflow.dashboard.app import application as payflow
from paypal.express.dashboard.app import application as express_dashboard
admin.autodiscover()
from apps.app import myapp_o
'''everything else has to have the include apart from the admin'''
urlpatterns = patterns
[
'',
(r'^admin/', admin.site.urls),
url(r'^i18n/', include('django.conf.urls.i18n')),
url(r'^myapp_o/', include('apps.myapp_o.urls')),
]
urlpatterns += i18n_patterns('',
# PayPal Express integration...
(r'^checkout/paypal/', include('paypal.express.urls')),
# Dashboard views for Payflow Pro
(r'^dashboard/paypal/payflow/', include(payflow.urls)),
# Dashboard views for Express
(r'^dashboard/paypal/express/', include(express_dashboard.urls)),
(r'', include(application.urls)),
'''(r'^myapp_o/', include('myapp_o.urls')),'''
)
if settings.DEBUG:
urlpatterns += staticfiles_urlpatterns()
urlpatterns += static(
settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)有没有人可以分享一下,告诉我哪里出错了?或者在仪表板中做这件事有更好的方法吗?
谢谢
夏娃
需要从我的设置中添加信息
导入操作系统
INSTALLED_APPS = [
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.admin',
'django.contrib.flatpages',
'django.contrib.staticfiles',
'mod_wsgi.server',
# External apps
# 1.5.7 still ships with South migrations in the wrong folder,
# 1.5.8 contains a fix. Upgrade when released.
# 'django_extensions',
'debug_toolbar',
# Apps from oscar
'paypal',
'compressor',
'widget_tweaks',
]
from oscar import get_core_apps
INSTALLED_APPS = INSTALLED_APPS + get_core_apps([
'apps.shipping',
'apps.checkout',
'apps.myapp',])谢谢。
发布于 2017-03-16 22:57:26
让我们先检查一下你的代码:
在apps/myapp/urls.py上,您不应该像这样导入。
from . import views
from apps.myapp import views因为后来的views覆盖了第一个views变量。因此,您的代码应该使用from . import views或from views import about, contacts进行更改,以获得清晰的导入。
其次,在Django 1.8之后,urlpatterns不再使用patterns。你应该考虑在Django1.10之后(在1.10 patterns被弃用之后)使用url函数来使用你的代码。
所以你的代码可以像这样修改:
urlpatterns = [
url(r'^en-gb/contacts/$', views.contacts, name='contacts'),
url(r'^about/$', views.about, name='about'),
]我还添加$结束您的网址,以完全匹配的网址从用户的请求。
第三,当我用i18n_patterns搜索姜戈文档时,
您可以将django的urls与String包含一起使用,如include('paypal.express.urls')。
我认为你的urls可以是这样的:
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^i18n/', include('django.conf.urls.i18n')),
url(r'^myapp_o/', include('apps.myapp_o.urls')),
]
urlpatterns += i18n_patterns(
# PayPal Express integration...
url(r'^checkout/paypal/', include('paypal.express.urls')),
# Dashboard views for Payflow Pro
url(r'^dashboard/paypal/payflow/', include(payflow.urls)),
# Dashboard views for Express
url(r'^dashboard/paypal/express/', include(express_dashboard.urls)),
url(r'', include('apps.myapp_o.urls')),
)请记住,当您使用字符串导入时,不必从app导入视图。如果这个东西不能工作,请发表评论。
https://stackoverflow.com/questions/42836880
复制相似问题