草庐IT

out_param

全部标签

ruby-on-rails - Rails 5 Rspec 接收 ActionController::Params

我刚刚升级到Rails5。在我的规范中,我有以下内容期望(模型).toreceive(:update).with(foo:'bar')但是,由于params不再扩展Hash而现在是ActionController::Parameters规范失败了,因为with()期待一个散列,但它实际上是ActionController::Parameters是否有更好的方法在Rspec中做同样的事情,例如不同的方法with_hash?我可以使用解决这个问题expect(model).toreceive(:update).with(hash_including(foo:'bar'))但这只是检查参数是

ruby-on-rails - 修改 Rails : How do advanced users find out what needs to be changed?

我已经使用Rails几个月了,我很乐意编写一个项目并根据我的需要操作Rails等。最近我一直在尝试更高级一些,所以我尝试修改/添加到现有的Rails代码库:添加新的表单辅助方法、添加responds_to:pdf方法等...然后我遇到了很多问题。困难在于学习我需要修改哪些代码;该代码所在的位置,以及如何确保我不会错过其他文件中的相关代码。我猜人们有办法学会这样做,但目前我主要只是猜测和希望。我想我的问题是,Rails人员如何了解他们需要修改的代码在哪里编辑以及编辑代码的方法?看起来这只是您需要先熟悉的东西,但我猜必须有一种简单的方法来理解在哪里(和什么)编辑。任何想法表示赞赏.....

ruby-on-rails - 葡萄 : required params with grape-entity

我正在用grape编写一个API服务器,我选择使用grape-entity因为它能够自动生成swagger的文档。但是现在我在按要求设置参数时遇到了问题。因为葡萄不验证参数是否存在。看起来grape忽略了实体参数的required:true。app.rbmoduleSmartmoduleVersion1classAppos_entity.rbmoduleSmartmoduleEntitiesclassOSEntityapp_entity.rbmoduleSmartmoduleEntitiesclassAppEntity现在其他一切都很好,但我不知道如何以DRY方式使用实体,并让grap

ruby - 如何在 Ruby 中检查参数 "param[:some_value]"

我知道一些检查参数是否为零的方法ifparam[:some_value]ifparam[:some_value].present?if!param[:some_value].nil?#unlessparam[:some_value].nil?if!param[:some_value].blank?#unlessparam[:some_value].blank?哪一个是正确的并且最受欢迎?它们之间有什么区别?我宁愿使用ifparam[:some_value]因为它最简单也最短。 最佳答案 以下是nil?、blank?和present?

ruby-on-rails - Rails 使用 Symbol 与 String 作为 params hash 中的键

如果我们使用字符串作为哈希键,Ruby需要计算字符串并查看它的内容(并计算其上的哈希函数)并将结果与​​已存储的键的(哈希)值进行比较在哈希中。如果我们使用一个符号作为散列键,则暗示它是不可变的,因此Ruby基本上可以将对象ID的(散列函数)与键的(散列)对象ID进行比较已经存储在哈希中。(快得多)。但问题在于Railsparams,它是HashWithIndifferentAccess的实例,如果我们编写params[:some_key]它会转换:som​​e_key到'some_key'然后它会尝试在参数散列中查找键。line159defconvert_key(key)key.ki

ruby-on-rails - 找不到 id=sign_out 的用户

注销链接在我的Rails应用程序中不起作用。我检查了下面列出的routes.rb,我的application.html.erb看起来遵循正确的路径。出现以下错误。ActiveRecord::RecordNotFoundinUsersController#showCouldn'tfindUserwithid=sign_outRails.root:/Users/patrickwalsh/rails_projects/ytutorialApplicationTrace|FrameworkTrace|FullTraceapp/controllers/users_controller.rb:4:

ruby-on-rails - rails : Sorting a query by params?

我正在使用运行一个简单的查找全部并使用willpaginate分页,但我也希望由用户对查询进行排序。想到的第一个解决方案就是使用params[:sort]http://localhost:3000/posts/?sort=created_at+DESC@posts=Post.paginate:page=>params[:page],:order=>params[:sort]但他的方法的问题是查询默认为按ID排序,我希望它是created_at。这是一种安全的排序方法吗?有没有办法默认使用created_at? 最佳答案 我会使用命名

ruby - 迷你魔术 : Cut circle out of square image

我需要用MiniMagick将方形图像转换为圆形图像.我知道有一个way使用ImageMagick:convert-size300x300xc:transparent-fill"image.png"-draw"circle240,90290,90"-crop100x100+190+40+repagecircle1.png我试过翻译:img.combine_optionsdo|c|c.draw"circle240,90290,90"c.crop"100x100+190+40"c.repage.+end我得到了这个东西,一个以我的大Nose为背景的黑色圆圈:如果有人知道如何正确翻译这个..

ruby-on-rails - 为什么 Strong Params 包含允许的 : false

我在Controller的update操作顶部放入了一个binding.pry。在该断点处,我输入params[:foo_bar]来检查params散列。这是我得到的:"✓","_method"=>"patch","authenticity_token"=>"123==","foobar"=>{"start_date"=>"08/27/2016","end_date"=>"08/29/2016","id"=>"89"},"bazz_id"=>"3","abc_id"=>"330","bazzbazz_attributes"=>{"0"=>{"_destroy"=>"1","city_i

ruby-on-rails - 如何从 params 哈希中删除空参数?

在我的Rails4应用程序中,我有这样的设置:classInvoicesControllerclassInvoice?",params[:minimum])ifparams[:minimum]data=data.where("total问题是我有一堆其他GET参数,它们都是params散列的一部分。如何从URL中删除空白参数,这样我就不会得到如下URL:/invoices?after=&before=&maximum=&minimum=&number=感谢您的帮助。 最佳答案 把它放在哈希后面:.reject{|_,v|v.blan