我想放在src目錄下
回複內容:
我想放在src目錄下
關於模板檔案的位置
模板檔案放在src目錄下只有一種原因:你的模板檔案屬於“可重複使用的Bundle(Reusable Bundle)”!
如果是上面這種情況,比如Bundle名稱是AcmeBlogBundle,那麼模板檔案的位置通常是"src/Acme/Bundle/BlogBundle/Resources/views"。但是這種情況的前提是,你的Bundle是可重複使用的,即可以直接放到別的項目中使用。
如果不是這種情況(通常情況下不是,除非你在開發一個第三方Bundle,比如FOSUserBundle這樣),那麼模板檔案放到"app/Resource/views"下則是符合Symfony的慣例(convention)和推薦的。
關於Bundle
Best Practice
Create only one bundle called AppBundle for your application logic
如上(摘自Symfony官方文檔),Symfony官方的最佳實務(Best Practice)推薦一個應用只需要建立一個Bundle(AppBundle)就夠了。其實用Symfony命令建立應用時,這個Bundle就已經建好了。
如何判斷是否需要建立一個Bundle?
當你有多重專案,能夠用到同樣一種應用邏輯(Domain Logic)的時候,你可以把這一套應用邏輯作為一個獨立的Bundle抽象出來。
獨立的Bundle的應用邏輯不可以依賴其他的Bundle,否則其就不是獨立的Bundle了。
當你建立獨立(可重複使用)的Bundle的時候,自然,包括與其相關的模板、設定檔等都可以放到其自己的檔案結構下。
參考如下獨立(可重複使用)Bundle的檔案結構(摘自Symfony官網文檔)
/├─ AcmeBlogBundle.php├─ Controller/├─ README.md├─ LICENSE├─ Resources/│ ├─ config/│ ├─ doc/│ │ └─ index.rst│ ├─ translations/│ ├─ views/│ └─ public/└─ Tests/
最後,附上Symfony關於最佳實務(Best Practice)的連結網址
Symfony Best Practices
Best Practices for Reusable Bundles