2014-02-22 19 views
1

使用冷凍瓶使我的網站靜態,我有以下問題。冷凍瓶創建文件,但得到鏈接錯誤

雖然我所有的頁面都是正在構建(file//c:/correctpath/build/2014/page-title/index.html),但頁面的鏈接是file:///c:/2014/page-title/

有什麼我錯過了?

編輯
在我的模板我有類似

{% for page in pages %} 

      <a href="{{ page.url() }}">{{ page.title }}</a> 
{% endfor %} 

其中.url()是一個方法page對象:

return url_for('article', name=self.name, **kwargs) 

回答

1

url_for產生的絕對路徑(如/2014/page-title) - 當你在瀏覽器中打開你的文件時,它遵循the rules regarding relative URL resolution並將extr一個文件內容。如果您只想查看您的文件,因爲它們將在服務器上顯示,Flask-Frozen有一個run method,它可讓您在生成後預覽您的網站。

或者,您可以將set FREEZER_RELATIVE_URLS to True明確地與Flask-Frozen鏈接生成index.html

+0

我已經擁有'FREEZER_RELATIVE_URLS = True'。我有其他的'url_for',在凍結的產品中變成像'/ tag/food/index.html'這樣的路徑,而不是'/ tag/food /'。我認爲有這種不一致是很奇怪的。我可以用'freezer.run(Debug = True)'來處理它,但是它似乎需要一些知道'/ article/title'應該映射到哪個webserver規則。 – kasperhj

0

不是設置FREEZER_RELATIVE_URLS = True,與造成的網址上index.html結束相反,你還可以設置FREEZER_BASE_URL<http://your.website/subdir>