【发布时间】:2014-02-04 20:27:47
【问题描述】:
我正在建立一个英文网站,只是想提供一小部分货币。对于 SEO 和缓存,我计划开发以下 url 结构,价格以相关货币显示。
家庭
- site.com/
- site.com/au/
- site.com/us/
- ...
分类索引页面
- site.com/categories/
- site.com/au/categories/
- site.com/us/categories/
- ...
产品索引页
- site.com/categories/category1/
- site.com/au/categories/category1/
- site.com/us/categories/category1/
- ...
产品页面
- site.com/categories/category1/product-1/
- site.com/au/categories/category1/product-1/
- site.com/us/categories/category1/product-1/
- ...
这是我尝试的 url.py
urlpatterns = patterns('',
#url(r'^$', views.homeCurrency, {'cur_slug': '' }, name='home'),
url(r'^(?P<cur_slug>[:au|nz|us|eu|ca|uk]+)/$', views.homeCurrency, name='home'),
url(r'^categories/', include('parts.urls', namespace="parts")),
url(r'^(?P<cur_slug>[:au|nz|us|eu|ca|uk]+)/bike-parts/', include('parts.urls', namespace="parts")),
)
这是我在 base.html 中需要的那种动态 url
<a href="{% url 'home' %}">Home</a>
我的问题有两个(我认为) 首先,我不能在 url 模式中允许使用默认情况,即 site.com(/),以便有一个通用的 url 名称可以在网站的每个版本中动态使用。
其次,即使忽略默认情况,我也会收到以下错误:
请求方法:GET
请求网址:site.com/au/
Django 版本:1.5.4
异常类型:NoReverseMatch
异常值:
未找到带有参数“()”和关键字参数“{}”的“home”的反向操作。
任何帮助将不胜感激,因为这是我在 Django 中的第一个项目。干杯
【问题讨论】:
标签: django caching seo django-templates django-urls