rails项目中使用配置文件来确定rails版本如何实现版本切换的

最近在折腾这个开源项目canvas-lms
按照他wiki中的步骤配置完环境之后,跑起来,发现竟然是rails2.3.18我了个去
然后仔细看了他的Gemfile,发现了一个canvas_rails3的配置文件
#Youcanenablethenot-yet-completeRails3supportbyeitherdefininga
#CANVAS_RAILS3envvar,orcreateanemptyRAILS3fileinthecanvasconfigdir
ifENV['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发现没怎么明白
慕尼黑的夜晚无繁华
浏览 508回答 2
2回答

万千封印

rails3.2和目前rails4差距蛮大的,升级rails后可能导致网站不能运行。因此建议在gemfile中指定和项目一样的版本,然后bundleinstall

阿波罗的战车

如果你是按照QuickStart小节来做的话,执行CANVAS_RAILS3=1$GEM_HOME/bin/bundleexecscript/server替代$GEM_HOME/bin/bundleexecscript/server如果你是按照ProductionStart小节来做的话,你是不是之前创建了一个canvasuser用户?你可以在这个用户的~/.bashrc里加上这么一句:exportCANVAS_RAILS3=1然后启动canvas的时候用的应该就是Rails3了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript