Tag: ruby

如何从字符串转换为对象属性名称?

我试图将字符串值转换为属于对象的属性的名称。 例如,在以下代码中,我需要将column_array中的所有字符串值转换为属性名称。 名称”student_identification” , “email”等是我的Student表的实际列名。 在实际场景中, column_array将由用户设置(通过勾选复选框)。 并且new_array将被csv取代,因为我希望数据进入csv文件。 目前我真的在以下方面苦苦挣扎: new_array << r."#{column_array[i]}" 我想将”#{column_array[i]}”转换为属性名称,以便我可以访问数据。 def exp_tst @records = Student.find(:all, :conditions=> session[:selection_scope], :order => sort_order(‘laboratory_id’)) column_array = [“student_identification”, “laboratory_id”, “email”, “current_status”] new_array = Array.new() @records.each do |r| (0..(column_array.size-1)).each do |i| new_array << r."#{column_array[i]}" end end end

计算两个Time对象之间的时间差

假设我从用户模型中创建两个时间对象: created = u.created_at updated = u.updated_at 如何计算两个时间对象之间的小时数差异? hours = created – updated 我想将它包装在一个方法中并扩展Time类。 我发现很难相信我需要扩展它,但我似乎无法找到一个处理使用不同时间单位计算经过时间的本机方法。

如何在Windows上“随时”创建gem?

我想在Windows XP上运行“简单”的cron。 所以每当gem install whenever我都会gem install whenever ,然后运行我的cron.rb require ‘rubygems’ require ‘whenever’ every 1.days, :at => ‘5:30am’ do command “puts now” end 但它抱怨说 You don’t have i18n installed in your application. Please add it to your Gemfile and run bundle install 所以我运行了gem install i18n ,现在相同的代码给了我一个错误 C:\whenever>ruby cron.rb cron.rb:4: undefined method ‘every’ for main:Object (NoMethodError) 任何gem工作时我都知道怎么做? […]

什么是< – Ruby字符串调用? 我如何在其中插入变量?

<–似乎在网上无法搜索,所以不得不在这里提出问题。 它们的可搜索名称是什么,如何在线添加变量?

脱机服务器上的Ruby gem依赖项

我有一个完全与Internet断开连接的服务器(出于一些奇怪的安全原因)。 如何使Ruby依赖于各种gems在该环境中工作? 它可能适用于Bundler ,但如何在没有Internet连接的情况下使用gem安装Bundler?

Selenium RC:自动在多个浏览器中运行测试

所以,我已经开始创建一些使用Selenium RC直接在浏览器中测试我的Web应用程序的Rubyunit testing。 我正在使用Selenum-Client作为ruby。 我已经为我inheritance的所有其他selenium测试创建了一个基类。 这会创建大量SeleniumDriver实例,并在每个实例上调用所有缺少的方法。 这基本上是并行运行测试。 其他人如何自动化这个? 这是我的实现: class SeleniumTest < Test::Unit::TestCase def setup @seleniums = %w(*firefox *iexplore).map do |browser| puts 'creating browser ' + browser Selenium::SeleniumDriver.new("localhost", 4444, browser, "http://localhost:3003", 10000) end start open start_address end def teardown stop end #sub-classes should override this if they want to change it def start_address "http://localhost:3003/" end […]

Store#index中的Sprockets :: CircularDependencyError

我正在使用Rails第4版手动Agile Web开发,我在rails 3.1中遇到了sprocket css的问题。 代码css是: http://media.pragprog.com/titles/rails4/code/rails31/depot_e/app/assets/stylesheets/application.css.scss 如果我修改app / assets / stylesheets / aplication.css.scss的css代码,我会抓住下一个错误: Sprockets::CircularDependencyError in Store#index Showing /home/ubuntu/Desktop/Depot/app/views/layouts/application.html.erb where line #5 raised: /home/ubuntu/Desktop/Depot/app/assets/stylesheets/application.css.scss has already been required Extracted source (around line #5): 2: 3: 4: Pragprog Books Online Store 5: 6: 7: 8: Rails.root: /home/ubuntu/Desktop/Depot Application Trace | Framework Trace | Full Trace app/views/layouts/application.html.erb:5:in`_app_views_layouts_application_html_erb___1008723970_81658620′ 我不明白为什么如果我修改aplication.css.scss中的边距值或填充值,例如我得到此错误。 […]

如何在PATH中解决不安全的世界可写dir / usr,在Ruby上模式040777警告?

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin13/rbconfig.rb:213: warning: Insecure world writable dir /usr in PATH, mode 040777 我在Stackexchange上搜索解决方案后尝试了这两个命令,但它对我不起作用。 它仍然向我显示我上面粘贴的警告。 sudo chmod 775 /usr/local sudo chmod go-w /usr/local/bin 如何修复此警告消息? 我正在运行OS X 10.9 Mavericks

rails生成rspec:install config / environments / development.rb:1:在`’:undefined method`configure’

首先,这是我的版本: Greg-Nowickis-MacBook-Pro:sample_app Greg_Nowicki$ ruby -v ruby 2.0.0p451 (2014-02-24 revision 45167) [x86_64-darwin13.1.0] Greg-Nowickis-MacBook-Pro:sample_app Greg_Nowicki$ rails -v Rails 4.0.4 我正在关注Hartl Rails教程并安装rspec进行测试。 我已经将gem’rspec-rails’添加到我的gemfile中,当我运行rails生成rspec:install时,这就是我得到的: Greg-Nowickis-MacBook-Pro:sample_app Greg_Nowicki$ rails generate rspec:install /Users/Greg_Nowicki/workspace/railstutorial/sample_app/config/environments/development.rb:1:in `’: undefined method `configure’ for # (NoMethodError) from /Users/Greg_Nowicki/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/activesupport-4.0.4/lib/active_support/dependencies.rb:229:in `require’ from /Users/Greg_Nowicki/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/activesupport-4.0.4/lib/active_support/dependencies.rb:229:in `block in require’ from /Users/Greg_Nowicki/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/activesupport-4.0.4/lib/active_support/dependencies.rb:214:in `load_dependency’ from /Users/Greg_Nowicki/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/activesupport-4.0.4/lib/active_support/dependencies.rb:229:in `require’ from /Users/Greg_Nowicki/.rvm/gems/ruby-2.0.0-p451@railstutorial_rails_4_0/gems/railties-4.0.4/lib/rails/engine.rb:591:in `block (2 levels) in ‘ from […]

根据点击的按钮渲染三个不同的部分

所以我有这样的布局: 家用/ index.html.erb: All posts All stories 在posts_controller.rb中 我有: def index @posts = Post.all respond_to do |format| format.html #looks for views/books/index.html.erb format.js #looks for views/books/index.js.erb end end 在stories_controller.rb中 我有: def index @stories = Story.all respond_to do |format| format.html #looks for views/books/index.html.erb format.js #looks for views/books/index.js.erb end end 在我的views / posts / index.js.erb中 $(“#content”).html(“”); 在我的views / […]