2015-08-19 51 views
1

我有很多ng-template就像這樣:現在如果把角NG-模板Django項目

<script type="text/ng-template" id="item.html"> 
    // content 
</script> 

,所有的人都在一個base.html文件,以模板代碼變得凌亂。

我想把每個ng-template放在它自己的html文件中。

邏輯地點將是templates文件夾。但是當我試圖引用像templates/ng-templates/item.html這樣的模板時,我得到了404 Not Found

我該如何解決?或者,完成此操作的最佳做​​法是什麼?

回答

3

其實你應該把你的角模板放到靜態目錄中。 由於Django不提供模板,因此它使用這些模板進行渲染。

因此,例如,你可以把你的模板/static/templates/item.html,並在角您引用此模板像/{{ STATIC_URL }}/templates/item.html

+0

將模板放入靜態目錄是一種很好的做法嗎? –

+0

@AshrafulIslam首先通常是那些與前端組件相關的模板。其次,這是最靈活的方式(您可以使用模板緩存,最小化,webpack/gulp /其他)。所以,我會說在靜態目錄中保留前端相關模板是完全可以接受的。 – Akisame

+0

我認爲這是安全問題。因爲您可以通過example.com/static/test.html訪問每個靜態文件。並感謝您的回答。 –