草庐IT

descendants-or-self

全部标签

ruby-on-rails - RSpec 应用程序助手测试 : Undefined local variable or method `helper`

有一段时间这似乎是一个闪烁的错误,但现在它一直出现:当我在一个相当简单的ApplicationHelper规范上运行RSpec时,我得到以下错误:%rspec--backtrace1)ApplicationHelperrendersMarkdownfromplaintextFailure/Error:expect(helper.md(plaintext)).toeq("Header\n")NameError:undefinedlocalvariableormethod`helper'for##/Users/danielsh/.rvm/gems/ruby-2.1.1@project-st

Ruby 的 'or' 与 '||'

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Differencebetween“and”and&&inRuby?Ruby:differencebetween||and'or'我有这段代码(类似这样的东西)foo=nilor4我希望foo成为第一个值(可以是nil)或默认值4。当我在irb中测试时,输出是我所期望的它是。愚蠢的我,我后来没有检查foo的值。一段时间后,我开始注意到我的代码中存在一些错误,直到我在irb中检查foo的值后我才发现问题,哦,令人惊讶的是,nil而不是预期的4。关于or与||的故事是什么?他们应该作为替代品工作吗?使用或代替||

ruby - 警告 : PATH set to RVM ruby but GEM_HOME and/or GEM_PATH not set, 请参阅 : https://github. com/wayneeseguin/rvm/issues/3212

我每次打开终端时都会收到这个错误:警告:PATH设置为RVMruby​​但未设置GEM_HOME和/或GEM_PATH,请参阅:https://github.com/wayneeseguin/rvm/issues/3212这是在我最近安装zsh(oh-my-zsh)后开始发生的我不知道如何设置GEM_HOME和/或GEM_PATH的路径。 最佳答案 我也面临同样的问题,更改.zshrc中的以下行,exportPATH="/usr/local/heroku/bin:.........."到exportPATH="$PATH:/usr/

ruby-on-rails - Ruby 中 'self.method_name' 和 'class << self' 的区别

我试图将一个类的实例化限制为一个类(不使用单例),但我做不到。我尝试使用类变量(@@)但没有成功。我用谷歌搜索并发现了这个:classA@count=0class我搜索了'class'的解释,希望能找到更好的(或者更简单和干净的),但再次,没有运气。最后,经过一些测试后我得出结论,'class'只是一个block包装器,您可以在其中定义class方法。那么,这是正确的吗?问候! 最佳答案 class符号打开了对象的特征类。特征类是一个匿名类,用于存储特定于实例的行为。在类的情况下,特征类有时称为元类。Ruby使用特征类来实现所谓的“

ruby - @property 或 self.property 使用访问器设置属性?

哪个是更好的做法;通过@property或self.property使用访问器操作属性? 最佳答案 如果您只是使用直接访问器,那么请坚持使用@property(除非您来自Python并且被@sigilhehe关闭)否则:这完全取决于您。但是self.property在某些需要确保属性已初始设置的情况下很有用:defproperty@property||=[]end#don'tneedtocheckif@propertyis`nil`firstself.property另请注意,在@property上使用self.property会产

ruby-on-rails - Rails 设计 : "You need to sign in or sign up before continuing" instead of "You will receive an email with instructions.."

我已经安装了DeviseonRails4.2.0,一切似乎都在工作,我使用了以下指南:http://sourcey.com/rails-4-omniauth-using-devise-with-twitter-facebook-and-linkedin/我的设计模块是:devise:database_authenticatable,:registerable,:confirmable,:recoverable,:rememberable,:trackable,:validatable,:omniauthable唯一的问题是,如果我尝试通过转到注册页面创建一个新帐户,然后在输入我的电子邮

ruby-on-rails - ActiveSupport::DescendantsTracker.descendants 不返回后代

这个问题与另一个关于LookingupallthedescendantsofaclassinRuby的堆栈溢出问题类似/相关.一个很好的问题,里面充满了我正在寻找的信息——除了当我进入Rails控制台时:irb(main):001:0>ActiveSupport::DescendantsTracker.descendants(Object)=>[]irb(main):002:0>ObjectSpace.each_object(Class).select{|klass|klass[IRB::Notifier::AbstractNotifier,IRB::Notifier::ErrUnre

ruby - Rails+ActiveAdmin - 使用 ransacker 过滤会抛出错误 PG::SyntaxError: ERROR: syntax error at or near ","

我在RubyonRails4.1.4上有一个项目,使用来自git://github.com/activeadmin/activeadmin的activeadmin1.0.0.pre,pg0.17.1,PostgreSQL9.3在项目中我有这些模型:类用户has_one:账户类账户属于:用户有很多:project_accountshas_many:项目,:through=>:project_accounts类项目#该项目有一个bool属性'archive'has_many:project_accounts类ProjectAccount属于:帐户属于:项目我有一个任务是在索引页面上实现一个

ruby - Net::HTTP SocketError: getaddrinfo: nodename 或 servname provided, or not known

我用谷歌搜索了这个问题并浏览了关于这个问题的相关帖子。我认为这不是Rails/Ruby问题,但不确定下一步该怎么做。irb(main):007:0>Net::HTTP.get_response("http://www.apple.com","")SocketError:getaddrinfo:nodenamenorservnameprovided,ornotknownfrom/Users/dan/.rbenv/versions/2.2.3/lib/ruby/2.2.0/net/http.rb:879:in`initialize'否则没有网络问题。apple.com在浏览器中加载正常。这

ruby - setter 方法 return self 不起作用,这是一个错误?

这个问题在这里已经有了答案:Isitpossibletohaveclass.property=xreturnsomethingotherthanx?(3个答案)关闭8年前。我想迭代一个字符串数组,并将它们中的每一个分配给类User的一个新实例,我希望我会得到一个User对象数组:classUserdefname=(name)@name=nameselfendendoriginal_array=["aaa","bbb","bbb"]result=original_array.collect{|str|User.new.name=str}但结果是一个字符串数组!putsresult.ins