草庐IT

has_is_baz

全部标签

ruby 摩卡 : is there an equivalent to rspec-mocks' #and_call_original?

Rspec-mocks具有expect(some_object).toreceive(:some_method).and_call_original。我可以用Mocha做这个吗?如果可以,怎么做?some_object.expects(:some_method).......什么? 最佳答案 我相当确定没有办法做到这一点。浏览sourcecode,有评论提到完全替换了原来的方法。#Theoriginalimplementationofthemethodisreplacedduringthetestandthenrestoredatt

ruby - sinatra config.ru : what is the configure block for?

我将Sinatra与Apache和“经典”风格的Phusion-Passenger一起使用:#config.rurequire'sinatra'configuredo....endrequire'./app'runSinatra::Application我想定义一些东西。在配置block内部或外部定义它有什么区别?#config.rurequire'sinatra'#A)Definingloggerhererack=File.new("logs/rack.log","a+")useRack::CommonLogger,rack#B)GlobalvariableshereLOGGER=L

ruby-on-rails - ruby rails : How do you check if a file is an image?

如何检查文件是否为图像?我想你可以使用这样的方法:defimage?(file)file.to_s.include?(".gif")orfile.to_s.include?(".png")orfile.to_s.include?(".jpg")end但这可能有点低效而且不正确。有什么想法吗?(我正在使用回形针插件,顺便说一句,但我没有看到任何方法来确定文件是否是回形针中的图像) 最佳答案 请检查一次MIME::Types.type_for('tmp/img1.jpg').first.try(:media_type)=>"image"

ruby-on-rails - I18n : How to check if a translation key/value pairs is missing?

我正在使用RubyonRails3.1.0和I18ngem.我(正在实现一个插件)我想在运行时检查I18n是否缺少翻译键/值对,如果是,则使用自定义字符串。也就是说,我有:validates:link_url,:format=>{:with=>REGEX,:message=>I18n.t('custom_invalid_format',:scope=>'activerecord.errors.messages')}如果.yml文件中没有如下代码activerecord:errors:messages:custom_invalid_format:Thisisthetesterrormes

ruby-on-rails - rails 5, "nil is not a valid asset source"

我刚刚升级到Rails5,在尝试显示图像时遇到了一个奇怪的问题。我有Rails4的确切代码:但升级后我得到:nilisnotavalidassetsource在升级到Rails5之前,我没有遇到任何类似的问题。这里可能有什么问题?会不会是其他原因而不是Rails升级问题? 最佳答案 问题是我试图显示一张不存在的图片。添加unlessarticle.image.blank?解决了这个问题:编辑:在Rails4中,这将不会毫无错误地呈现任何内容,而在Rails5它会引发错误。所以这实际上是一个升级问题。非常感谢@BookOfGreg指出

ruby-on-rails - rails : How to get has_many associations of a model

如何获取模型的has_many关联?例如,如果我有这个类:classA我想要这样的方法:A.get_has_many返回[B,C]这可能吗?谢谢! 最佳答案 您应该使用ActiveRecordreflections.然后你可以这样输入:A.reflect_on_all_associations.map{|assoc|assoc.name}这将返回你的数组[:B,:C] 关于ruby-on-rails-rails:Howtogethas_manyassociationsofamodel,我

ruby-on-rails - Rails + 延迟作业 : Where is the correct place to store custom job classes?

我是delayed_job的新手,我开始编写自己的“自定义作业”。每个自定义作业基本上只是一个常规的ruby​​类,但我不确定这些自定义作业类通常存储在项目目录结构中的何处。我在考虑lib,但此时lib似乎是一个垃圾抽屉:/(不过也许没关系)谢谢!! 最佳答案 常见的方法是在app文件夹下创建jobs文件夹。但您唯一应该关心的是它们是您的文件,因此请以您觉得最适合自己的方式进行。 关于ruby-on-rails-Rails+延迟作业:Whereisthecorrectplacetosto

ruby-on-rails - rails 4 : how to use named scope with has_many associations

在我的Rails4应用程序项目(模型)has_many视频(模型)中。我在视频模型中有一个命名范围:scope:live,where(is_deleted:0,sent_to_api:1)在我的一个项目View中,我这样做(项目是项目的一个实例):project.videos.live.size我希望得到的是那个特定项目中的项目数量,但我得到的是任何项目中的视频数量。就好像.live不是从.videos返回一个子集而是替换它。我看到它解释了here将命名范围相互链接起来应该与逻辑AND相结合,但是当应用于“关联方法”时[.videos在这种情况下的正确术语]似乎并不即将发生。正确的做法

ruby-on-rails - 如何跳过 has_secure_password 验证

在我的应用中,只有管理员可以创建新的用户记录。用户会通过电子邮件收到一个激活链接,他们可以在其中设置密码。我想使用has_secure_passord方法(railscast):classUser效果很好,但它会自动验证密码摘要的存在...所以当管理员创建记录时,验证失败。我有办法只跳过自动添加的password_digest验证而不跳过我添加的其他验证吗? 最佳答案 从4.X版本的rails开始,has_secure_password采用一个选项:validations。如果将其设置为false,它将不会运行验证。gem3.X版本

Ruby 'is_a?' 需要类或模块 (TypeError)

我正在尝试使用Ruby并尝试创建一个小型银行账户程序。当我运行这行与create_account一起运行的特定代码时:unless@response.is_a?Integer&&@response.to_str.length==4puts"Yourresponsemustbe4numbersinlength."create_accountelse@pin=@responseputs"Yourpinhasbeenset."end我收到这样的回复:bank_account.rb:24:in'is_a?':classormodulerequired(TypeError)frombank_ac