草庐IT

ruby-on-rails - rake db :migrate doesn't work after ruby 2. 2.2 到 2.2.3 通过 RVM 升级

我最近使用RVM从Ruby2.2.2升级到2.2.3。这搞砸了我的开发环境中的一些事情,但由于有用的错误消息,到目前为止我可以处理它。现在我想向我的数据库添加一些迁移,但遇到了这个错误:$rakedb:migrate/Users/howard/.rvm/gems/ruby-2.2.3/bin/ruby_executable_hooks:15:in`eval':/Users/howard/.rvm/rubies/ruby-2.2.3/bin/rake:4:syntaxerror,unexpectedtSTRING_BEG,expectingkeyword_door'{'or'('(Syn

ruby-on-rails - Rails 3.2 ActiveAdmin 'Collection is not a paginated scope.' 错误

我正在使用Rails3.2和ActiveAdmin0.4.4开发应用程序。我有一个名为Teaser的模型(/app/models/teaser.rb):classTeasertruemount_uploader:img,TeaserUploaderend然后我向其中添加了ActiveAdmin(/app/admin/teaser.rb):#encoding:UTF-8ActiveAdmin.registerTeaserdoformdo|f|f.inputs"Teaser"dof.input:name,:label=>'Текст'f.input:url,:label=>'Ссылка'

Ruby - 需要 'watir-webdriver' - 生成一个没有这样的文件的 LoadError ... 为什么?

我是Ruby的新手,非常感谢能帮助我理解这里发生的事情。总结:Gem安装watir-webdriver安装正常开始irb需要“watir-webdriver”...LoadError:没有要加载的文件--watir-webdriver当然这应该响应=>true为什么找不到gem?或者我做错了什么?我在win7上,Railsinstaller(Ruby1.8.7)。 最佳答案 在1.8.7中,您需要先要求ruby​​gems。require'rubygems'这里有一些解释:Howdoesrequirerubygemshelpfind

ruby-on-rails - Rails 3 - 'Couldn' t 解析 Yaml'

我不知道我做错了什么。我尝试运行“railsc”,但它只是给我一个错误。它在10分钟前工作。:\C:/Ruby192/lib/ruby/1.9.1/psych.rb:148:in`parse':couldn'tparseYAMLatline2column12(Psych::SyntaxError)fromC:/Ruby192/lib/ruby/1.9.1/psych.rb:148:in`parse_stream'fromC:/Ruby192/lib/ruby/1.9.1/psych.rb:119:in`parse'fromC:/Ruby192/lib/ruby/1.9.1/psych.

ruby-on-rails - 如何初始化 'attr_accessor'属性值?

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:attr_accessordefaultvalues我正在使用RubyonRails3.0.9,我想初始化一些attr_accessor我的类\模型中继承自ActiveRecord::Base的属性值.也就是说,...在我的模块中我有:classUser和我想设置为true所有attr_accessor属性值。我该怎么做?P.S.:当然,我想通过“àlaRubyonRailsWay”解决上述问题。我知道after_initialize回调,但通过使用该方法,我应该重复每个attribute_name我想将其值设

Ruby 'Capitalize!' 悖论

在Ruby中,我们有'bang'方法capitalize!如果没有对字符串进行任何更改,它会返回一个nil的奇怪行为。这意味着我无法将此命令与其他命令链接在一起,因为如果它返回nil,它会有效地破坏链。我想做的是这样的:fname=fullname[0...fullname.index('')].capitalize!从字符串中提取名字并且也应该将其大写。但如果它已经大写,则存储在fname中的字符串是nil。当然,我可以添加另一个声明,但想知道是否有一种方法可以“不破坏链条”来做到这一点。 最佳答案 使用.capitalize(没

ruby - `-' : nil can't be coerced into Fixnum (TypeError)

在我的程序中,我收到一条错误消息,显示./ruby_camping.rb:91:in`-':nilcan'tbecoercedintoFixnum(TypeError)。我想做的是为我刚刚入住的客人结账。这是结账部分的代码块:defself.check_outputs"Welcometocheckout!"puts$camping.current_guestsputs"Herearethecurrentguests,whodoyouwanttocheckout?!"puts"Stateplotnumber"plot=gets.chomp.to_iguest=$camping.curre

ruby-on-rails - rails中 `stringify_keys'是什么以及出现这个错误时如何解决

在我的应用程序的部分文件中,我有以下用于显示用户导航(通过Devise)的代码片段:-'delete'do%>但我收到一条错误消息:-undefinedmethod`stringify_keys'for"/users/sign_in":String现在我的问题是:-`stringify_keys'一般是什么??如何在我的代码中解决这个问题???谢谢... 最佳答案 1)stringify_keys是一种在哈希上调用以将其键从符号转换为字符串的方法。它是由Rails添加的——它不是标准的Ruby方法。Hereitisinthedocs

ruby-on-rails - rails/事件记录 : save changes to a model's associated collections

我是否必须保存对模型集合中单个项目的修改,或者是否有一种方法可以在我保存模型时调用以保存它们。#save似乎没有这样做。例如:irb>rental=#...#=>#irb>rental.dvd#=>#,sale_price:#>irb>rental.dvd.copies+=1#=>21irb>rental.save#=>trueirb>rental.dvd#=>#,sale_price:#>irb>Dvd.find_by_title('TheWomenofSummer')#=>#,sale_price:#>在上面的例子中,租赁的DVD副本似乎没有更新数据库中的副本(注意不同的副本数)。

ruby - 如何安装 Ruby gem 'net/http'?

我正在尝试使用找到的一些Ruby代码here.在代码中它有:require'net/http'但是,当我在终端中写入时:sudogeminstallnet/http它给出了错误:ERROR:Couldnotfindavalidgem'net/http'(>=0)inanyrepository有人可以告诉我如何安装这个gem吗? 最佳答案 您无需安装任何东西即可使用net/http。它是你的一部分regularrubydistribution.只需运行脚本,它应该开箱即用。 关于ruby-