小编Dan*_*hoe的帖子

使用rvmrc或ruby-version文件用RVM设置项目gemset?

我使用RVM(Ruby版本管理器)为我的每个Rails项目指定一个Ruby版本和一组gem.

我有一个.rvmrc文件,每当我cd进入项目目录时自动选择一个Ruby版本和gemset .

安装RVM 1.19.0后,我收到一条消息

您正在使用.rvmrc,它需要信任,它速度较慢且与其他ruby管理器不兼容,您可以切换到 .ruby-version使用rvm rvmrc to [.]ruby-version或忽略此警告rvm rvmrc warning ignore /Users/userName/code/railsapps/rails-prelaunch-signup/.rvmrc, .rvmrc将继续作为RVM 1和RVM 2中的默认项目文件,忽略运行所有文件的警告rvm rvmrc warning ignore all.rvmrcs.

我应该继续使用我的.rvmrc文件还是应该切换到.ruby-version文件?哪个是最佳的?有什么后果?

ruby-on-rails rvm ruby-on-rails-3 ruby-on-rails-3.2 rvmrc

228
推荐指数
2
解决办法
7万
查看次数

如何生成Haml视图而不是erb

我正在使用Rails 2.3.4构建应用程序并使用

script/generate controller home index
Run Code Online (Sandbox Code Playgroud)

生成控制器和主页.我安装了Haml.我得到一个erb文件:

app/views/home/index.html.erb
Run Code Online (Sandbox Code Playgroud)

但我宁愿生成一个Haml文件,例如:

app/views/home/index.html.haml
Run Code Online (Sandbox Code Playgroud)

我记得如果检测到haml gem,Merb会生成.haml视图而不是.erb.这不适用于Rails 2.3.4吗?我试过了

script/generate controller home index --haml
Run Code Online (Sandbox Code Playgroud)

但是"--haml"选项无效.

当然我可以手动将我的erb文件更改为haml文件,但我宁愿让生成器完成工作.叫我懒惰.建议?

haml

34
推荐指数
1
解决办法
2万
查看次数

如何创建一个新的Ruby gem?

要创建一个新的Ruby gem,我应该使用Jeweler还是应该使用Bundler的内置gem骨架来创建基础gem?重要的是什么区别?

ruby rubygems bundler

34
推荐指数
2
解决办法
1万
查看次数

Compass for Rails 3.1的价值是什么?

我正在尝试在启动新的Rails 3.1项目时决定是否应该包含Compass.我以前没用过Compass.

Rails 3.1现在直接支持SCSS.Rails 3.1资产管道(通过链轮)现在自动编译样式表.我可以直接使用蓝图等CSS框架的SCSS版本.

使用Compass with Rails 3.1可以获得什么好处?

sass blueprint-css ruby-on-rails-3 ruby-on-rails-3.1 compass-sass

27
推荐指数
2
解决办法
5950
查看次数

Rails 3应用程序模板

哪些Rails应用程序模板显示了设置新Rails 3应用程序的最佳实践?

我对两件事感兴趣.

  1. 哪些应用程序模板设计得很好(模块化且易于定制)?

  2. 哪个提供典型Rails应用程序所需的最佳(或最流行)组件组合?

我问的是与rails new app_name -m命令一起使用的脚本来生成应用程序.


我看了一些例子.你觉得这些怎么样?

greendog99/greendog-rails-template Devise,RSpec,Factory Girl,jQuery,Haml,Sass,Compass,Git,rvm,HTML5 Boilerplate,以及布局.使用子模板进行轻松自定义.

dcrec1/rails3_template 设计(用黄瓜步骤),黄瓜,RSpec,工厂女孩,哈姆,指南针,jQuery,Git,Formtastic,布局等等.使用子模板进行轻松自定义.

aentos/rails3-templates 设计或Authlogic或OmniAuth,Cucumber,Capybara,RSpec,Factory Girl,Shoulda,jQuery,Haml,Compass,960网格或蓝图,Capistrano或Heroku或Inploy,Git,以及布局.使用子模板进行轻松自定义.

rubyx/rails3_template PostgreSQL,Devise,Cucumber with Selenium and Capybara,RSpec with Machinist and Faker,JQuery,Simple Form,Haml,SASS,Git,rvm,Google analytics(可选),Hoptoad用于问题跟踪(可选),TellThemWhen用于停机通知(可选的).在README中描述了配方.

perfectline/template-bucket Cucumber,RSpec,jQuery,Haml或Jammit,Capistrano,Git,rvm,加上布局.使用子模板进行轻松自定义.

leshill/rails3-app Cucumber,RSpec,Factory Girl or Fabrication,Haml,jQuery,Git,rvm.

这些Rails 2.3项目看起来曾经很受欢迎,但自2009年或2010年以来一直没有更新:

JM/Rails的模板

ffmike/BigOldRailsTemplate

ruby-on-rails ruby-on-rails-3

18
推荐指数
2
解决办法
6640
查看次数

使用Ruby 1.9.3时"证书验证失败"OpenSSL错误

我在Mac OS 10.6.8上使用Ruby 1.9.3p0(使用rvm安装).当我尝试使用GitHub上托管应用程序模板创建一个新的Rails应用程序时,使用它(例如):

$ rails new myapp -m https://github.com/RailsApps/rails3-application-templates/raw/master/rails3-mongoid-devise-template.rb -T -O

我收到此错误消息:

/Users/me/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/net/http.rb:799:in `connect': SSL_connect 
returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed 
(OpenSSL::SSL::SSLError)

据我所知,Ruby语言解释器使用OpenSSL连接到GitHub来请求应用程序模板文件.GitHub要求使用SSL进行所有连接.连接失败,因为OpenSSL无法验证服务器证书.

我可以通过下载证书文件来解决问题:

$ cd /opt/local/etc/openssl
$ sudo curl -O http://curl.haxx.se/ca/cacert.pem
$ sudo mv cacert.pem cert.pem

使用Ruby 1.9.2我没有问题.为什么我得到Ruby 1.9.3的"证书验证失败"问题?这是一个Ruby 1.9.3错误吗?它是否特定于Mac OS 10.6.8?我的解决方案是解决这个问题的正确方法吗?

ruby openssl ruby-on-rails rvm ruby-on-rails-3.1

18
推荐指数
3
解决办法
3万
查看次数

启动新Rails应用程序的参考清单?

使用"rails new myapp"创建新的Rails应用程序很容易(或者从Rails向导或RailsApps项目中的模板开始).

但在那之后,你做了什么?你总是添加什么宝石?在开始开发之前你做了什么决定?在部署应用程序之前,经常会忽略哪些重要项目?

我想整理一份参考清单进行分享.有什么建议?

例如:

  • 创建一个新的RVM gemset
  • 修改.gitignore文件
  • 从TestUnit切换到RSpec
  • 设置Guard以在开发期间在后台运行测试
  • 将视口元标记添加到默认应用程序布局
  • 不要忘记创建sitemap.xml文件
  • 添加Google Analytics代码段

还有什么?

ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

17
推荐指数
3
解决办法
3818
查看次数

使用Bootstrap或Foundation在Rails 4.1下的Flash消息的颜色错误

以下代码使用Bootstrap 3.0显示Rails Flash消息:

<%# Rails flash messages styled for Twitter Bootstrap 3.0 %>
<% flash.each do |name, msg| %>
  <% if msg.is_a?(String) %>
    <div class="alert alert-<%= name == :notice ? "success" : "danger" %>">
      <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
      <%= content_tag :div, msg, :id => "flash_#{name}" %>
    </div>
  <% end %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

代码来自文章Bootstrap和Rails.

Foundation和Rails一文中的类似代码可以与Foundation一起使用:

<%# Rails flash messages styled for Zurb Foundation 5.0 %>
<% flash.each do |name, msg| %>
  <% if msg.is_a?(String) %>
    <div …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails twitter-bootstrap zurb-foundation railsapps ruby-on-rails-4.1

17
推荐指数
1
解决办法
5399
查看次数

Rails 3的嵌套脚手架发电机?

是否有适用于嵌套资源的Rails 3脚手架生成器?

Rails 2.3有

https://github.com/jeremyf/rspec_on_rails_nested_scaffold

https://github.com/mahkhaled/NestedRestfulScaffold

https://github.com/nilesh/nested-scaffold

但我没有找到任何类似的Rails 3.

对于快速原型,在为嵌套资源运行脚手架生成器之后,不必调整视图是很方便的.

nested generator scaffolding ruby-on-rails-3

12
推荐指数
1
解决办法
6534
查看次数

Rails:包含外部JavaScript

我想使用JavaScript库,如jQuery插件.我是否使用Rails资产管道?或者我应该用javascript_include_tag包含它?我有什么选择,推荐的做法是什么?

javascript ruby-on-rails ruby-on-rails-3 asset-pipeline

12
推荐指数
1
解决办法
2万
查看次数