ruby on rails on windows
这次想系统学会rails,最终目标是将redmine改造成顺手的工具,主要的手段就是开发redmine插件。虽然网上都推荐使用类Unix系统,可手头只有win7系统,就安装了。
难免会遇到这样那样的问题,只能逐一解决了:
1、为了省事,下载了bitnami redmine最新3.2.2版本,一键安装ok,什么数据库mysql、数据库管理工具php等等全安装好了,打开例子测试成功。
2、需要配置开发环境,cmd打开命令行,ruby -v(2.1.8)、gem -v(2.2.5)都正常,可rails -v就是报错。
3、无奈,gem install rails,但失败,看提示应该是连不上https://rubygems.org/。上网搜索,如下解决:
gem sources --remove https://rubygems.org/
gem source -a http://gems.ruby-china.org
设置好源后继续更新: gem install rails
rails -v(4.2.6)安装成功,本来还准备railsinstaller,暂时是不需要了。
(上述参考:http://www.cnblogs.com/51kata/p/5469722.html)
4、环境准备好了,剩下的就是找合适的教程了。因为没有非常急的应用需求,所以不着急进行redmine的插件开发,先系统学习,找个合适的入门教程。基本上网上推荐的都是持续更新的Ruby on Rails Guides(原文,中文),最后有人推荐了一个台湾作者写的Ruby onRails实战圣经(基于rails4),看了下还真不错!经过比较,决定选用后者。
5、边阅读边coding,到Part 1第3章hello world时,浏览器中打开页面报TypeError错误,显示/app/views/layouts/application.html.erb lines 5 有问题。查看源文件,第5、6行内容为:
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
困扰了几个小时,网上的答案主要集中在几个方面:
1)将application改为default,但是该方法有缺陷,会导致js运行问题; 但修改后确实可以显示hello world了。
2) 因windows原因,需要安装nodejs;安装后重启服务器,但是好像也没有解决问题。
3) 因coffee-script-source版本问题(1.9.0在windows上使用有该问题,我的为1.10.0版本)需要使用1.8.0版本。我在使用上述2个方法后,用此方法解决了。首先修改Gemfile,加入:gem 'coffee-script-source', '1.8.0'。然后:bundle update coffee-script-source。然后重启服务器,刷新页面ok!
参考以下文章:
http://stackoverflow.com/questions/28421547/rails-execjsprogramerror-in-pageshome
http://stackoverflow.com/questions/28241981/rails-4-execjsprogramerror-in-pageswelcome
http://stackoverflow.com/questions/34388231/getting-error-on-css-with-ruby-on-rails
https://ruby-china.org/topics/24343(对方法1、2进行了总结,提出了第4种方法)
总之,windows下的坑很多,一个简单的hello world还费了这般周折,只能且行且记录了!