ruby - rails專案中使用設定檔來決定rails版本如何實現版本切換的
阿神
阿神 2017-04-22 08:58:48
0
2
718

最近在折騰這個開源項目canvas-lms

按照他wiki中的步驟配置完環境之後,跑起來,發現竟然是rails2.3.18我了個去

然後仔細看了他的Gemfile,發現了一個canvas_rails3的配置文件

# You can enable the not-yet-complete Rails3 support by either defining a
# CANVAS_RAILS3 env var, or create an empty RAILS3 file in the canvas config dir
if ENV['CANVAS_RAILS3']
  CANVAS_RAILS3 = ENV['CANVAS_RAILS3'] != '0'
else
  CANVAS_RAILS3 = File.exist?(File.expand_path("../RAILS3", __FILE__))
end
CANVAS_RAILS2 = !CANVAS_RAILS3

發現是通過ENV['CANVAS_RAILS3']來控製rails版本是2還是3的,想請問下這個ENV['CANVAS_RAILS3']這個環境變量值應該如何修改或者賦值呢,是從命令行傳入麼,看了rubydoc發現沒怎麼明白

阿神
阿神

闭关修行中......

全部回覆(2)
巴扎黑

rails3.2和目前rails4差距蠻大的,升級rails後可能導致網站不能運作。因此建議在gemfile中指定和項目一樣的版本,然後bundle install

Peter_Zhu
  • 如果你是按照 Quick Start 小節來做的話,執行

    CANVAS_RAILS3=1 $GEM_HOME/bin/bundle exec script/server
    

    替代

    $GEM_HOME/bin/bundle exec script/server
    
  • 如果你是按照 Production Start 小节来做的话,你是不是之前创建了一个 canvasuser 用户?你可以在这个用户的 ~/.bashrc 裡加上這麼一句:

    export CANVAS_RAILS3=1
    

    接著啟動 canvas 的時候用的應該就是 Rails3 了

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板