我正在建立一個英文網站,只是想提供一小部分貨幣。對於搜索引擎優化和緩存,我計劃開發以相關貨幣顯示價格的以下網址結構。不同貨幣的Django網址格式
首頁(S)
- site.com/
- site.com/au/
- site.com/us/
- ...
分類指數Pages
- site.co M /分類/
- 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/
- ...
這是我的一個ttempted 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")),
)
這是哪門子的動態URL我需要在我base.html文件
<a href="{% url 'home' %}">Home</a>
我的問題是雙重的(我認爲) 首先,我不能允許默認情況下,即site.com(/)在url模式中,這樣就可以在網站的每個版本中動態使用公用的url名稱。
其次,即使忽略默認的情況下,我收到以下錯誤:
請求方法:GET 請求URL:site.com/au/ Django的版本:1.5.4 異常類型:NoReverseMatch 異常值:
未找到參數'()'和關鍵字參數'{}'的'home'反向。
任何幫助將不勝感激,因爲這是我在Django的第一個項目。乾杯
謝謝托馬斯,我最初看着語言環境功能,但認爲它可能是矯枉過正。我將如何使用區域設置功能去創建上面所需的url結構的url模式,以及將會帶來哪些好處?再次感謝 – talkterps
另外,文檔也這樣說:「i18n_patterns()只允許在你的根URLconf中使用,在包含的URLconf中使用它會引發一個錯誤配置的異常。」這會導致任何問題,因爲我包括parts.urls? – talkterps
使用內置i18n框架的好處是,除了本地化定價之外,您還可以使用它來提供本地化內容。另外,像django-cms這樣的大型django項目也會自然地融入其中。 – Thomas