2014-10-06 97 views
0

我正在向舊的Rails 2應用程序添加新模型,並且想定製腳手架模板。在Rails guide,就這樣說:在Rails 2中自定義生成器模板

在Rails 3.0及以上,發電機不只是看在源根模板,他們還尋找其他路徑模板。其中一個是lib /模板。

這是否意味着Rails 2.0.2僅查看源根目錄中的模板?有沒有什麼方法來定製這些模板?

回答

0

我能想到的最好方法就是修改Rails源代碼根目錄下的模板。如果Rails是在您的用戶主文件夾下使用RVM安裝的,那麼這會更容易一些。爲了讓源代碼控制模板的新版本,我在Rails源代碼根目錄中創建了符號鏈接,返回到我的應用程序源代碼中的新模板文件。

  1. 我在我的應用程序根目錄下創建了一個新文件夾:lib/templates
  2. 我複製的原始模板從Rails的源代碼:

    cd ~/myapp/lib/templates 
    cp ~/.rvm/gems/ruby-1.8.6-p420/gems/rails-2.0.2/lib/rails_generator/generators/components/scaffold/templates original 
    
  3. 我創建了一個新的文件夾templates/custom和複製的模板控制器那裏。然後,我編輯了一些新功能的文件,並在Rails源代碼中添加了一個符號鏈接。

    cd custom 
    ln -sf `pwd`/* ~/.rvm/gems/ruby-1.8.6-p420/gems/rails-2.0.2/lib/rails_generator/generators/components/scaffold/templates/