草庐IT

some_parameter

全部标签

ruby-on-rails - 另一种写法 : if some_variable && some_valiable. size == 2

在Ruby和RoR中,我经常发现自己测试对象是否存在,然后对象的属性是否符合某些条件。像这样:ifparams[:id]&¶ms[:id].size==40...dostuffend有没有更有效的方法来做到这一点?像这样的东西:ifparams[:id].size==40rescuefalse但没有使用救援? 最佳答案 在Rails2.3中,您可以使用Object#try方法:ifparams[:id].try(:size)==40#dostuffendtry在nil上调用(带任何参数)时将返回nil。希望这是有道理的。

ruby - 为什么我会收到 HABTM 协会的 Unpermitted parameters?

我目前正在开始构建一个开源商店目录应用程序。我有FunShop和FunSubcategory模型通过FunSubcategorization模型加入has_many:through关联。在FunShop表单中,我以这种方式添加了Subcategory复选框。当我提交表单时,出现错误Unpermittedparameters:fun_subcategory_ids。我对强参数略知一二,我怀疑这有问题。在我的FunShopController中,我有这个:deffun_shop_paramsparams.require(:fun_shop).permit(:fun_subcategory_

Ruby 需要 'some-gem' 在控制台中工作,而不是在 Eclipse 中工作?

好吧,我正在尝试通过“机架”运行一个简单的Web服务器。所以这是我的程序:require'rubygems'require'rack'classHelloWorlddefcall(env)[200,{"Content-Type"=>"text/html"},["HelloRack!"]]endendRack::Handler::Mongrel.runHelloWorld.new,:Port=>9292如果我在控制台中运行它,它工作正常。如果我在Eclipse中运行它,它会以错误结束:/Users/MY_SUPER_SECRET_USER/.rvm/rubies/ruby-1.9.3-p

ruby-on-rails - 在 Devise 注册时提交时为 "Unpermitted parameter: email"

我有一个简单的RubyonRails应用程序,使用Devise进行身份验证。我想让用户使用用户名而不是电子邮件登录,并尝试按照此处所述实现这一点:Deviseauthenticatingwithusernameinsteadofemail问题是我仍然希望每个用户都有一个电子邮件地址,并且在注册时需要一个。所以,我在注册表单上留下了“电子邮件”字段。问题是,当我使用有效的电子邮件地址(或电子邮件的任何其他值)填写注册表单时,Devise给出了一个错误:“电子邮件不能为空”。为什么电子邮件被视为空白,我该如何解决?classApplicationController用户模型classUse

ruby-on-rails - rails : How can I set the route for a method which doesn't require an :id parameter but instead requires 2 query parameters

我有一个列表表,其中包含一个列表模型和一个listings_controller类。我写了一个需要2个参数的方法:纬度和经度。然后,它会检索该坐标周围5公里左右的列表。在listings_controller中,这是我写的那个方法:defaroundlat=params[:latitude]long=params[:longitude]@surroundings=Listing.where("latitude=?andlongitude=?",lat,long)end我想做的是在我的routes.rb文件中设置一个url,当客户端浏览器调用该url时,它将提供纬度和经度作为2个参数。不

ruby - 导轨 : control ordering of query parameters in url_for?

我想生成一个URL,其中“p=1”查询参数出现在URL的末尾,例如:/path?foo=X&bar=Y&p=1生成URL时是否可以控制查询参数的顺序:url_for(params.merge({p:page_num}))?更新:我试过了ChuckE'ssuggestionbelow.事实证明,在Ruby1.9中,哈希已经排序,因此ActiveSupport::OrderedHash中的代码实际上是空操作。您可以使用Ruby1.9验证顺序是否已保留:>>h={one:1,two:2,three:3}{:one=>1,:two=>2,:three=>3}>>f=h.except(:one)

ruby-on-rails - rails : Pass parameter from view to controller

我在rails中有以下模型:classTasktrueendclassProject我有一个列出可用项目的View在单击任何项​​目时,我想打开一个页面,其中列出了所单击项目中的所有任务。现在的问题是如何传递项目ID?我还希望此后项目ID在许多Controller中可见,所以我认为我应该使用session变量或类似的东西? 最佳答案 你想要使用嵌套资源路线.rbresources:projectdoresources:tasksend这会让你做然后你会有一个任务Controller,参数将包括:project_id/projects

ruby - 符号如何(例如 :label) handled as part of a parameter hash

我正在查看O'Reilly书中关于RubyonRails的示例代码并遇到了这个:deflabel_for(method,options={})extra=""ifoptions[:required]extra="*"endlabel(:label||method)+extra+""end我知道options是一个散列,但它怎么能只用:label调用label-不应该吗需要说options[:label]吗?谢谢! 最佳答案 是的,我相信是这样,否则:label符号将始终作为method名称传递给label助手。

ruby-on-rails - rails : Access parameters in view after form submission

在我的Rails3.2项目中,我有一个用于在app/views/sites/中的new.html.erb中创建新站点的表单......然后是sites_controller.rb中的create函数defcreate@site=Site.new(params[:site])respond_todo|format|if@site.saveformat.html{redirect_to@site}elseformat.html{renderaction:"new"}endendend然后在用户提交之后,我想在show.html.erb中显示用户刚刚提交的hash_nameYoujustpu

html - rails : Wrap parameter coming from form in a nested hash

我有以下用于搜索的表单,它还应该执行过滤:我现在要做的是将用于过滤的参数包装在嵌套哈希中,以便我在参数中有如下内容:{"utf8"=>"✓","search"=>"term","action"=>"index","controller"=>"search","filter"=>{"field"=>"value"}}。请注意,过滤器参数是嵌套的我找不到使用标准Rails表单助手来执行此操作的方法。有什么办法吗? 最佳答案 在您想要的嵌套键周围使用[]。在您的示例中,将您的check_box更改为:如果您想要以下形式的内容:{"filt