Tag: 参数

在Rails中检查和validation非模型参数的位置

你在哪里检查Ruby On Rails中不是模型属性的URL参数(如page,per_page,sort_mode)? 在控制器或模型中? 例如,在进行更复杂的数据库查询时,您是否会检查参数并可能在控制器中设置默认值,然后执行MyModel.search(page, per_page, order, sort_mode, query) ,或者您是否在内部设置validation模型,只是传递非操纵的参数MyModel.search(params) ? 那么如何将该参数报告回视图? 例如,sort_mode参数应该在视图上为排序方向生成一个小箭头。 你检查并清理params散列并从params获取视图中的数据,或者你是否使用自己的实例变量?

根据操作的ID渲染rails部分

我正在建立一个小型电子商务网站,销售各种男装和女装。 我想基于用户所在的分类法来呈现部分内容。例如,如果用户位于mysite.com/t/women/pants,我想呈现_women.html.erb,或者,如果用户是在mysite.com/t/men/shirts我想呈现_men.html.erb。 我有一个分类模型,包含多个分类,而Taxon模型有多个产品。 在taxons_controller.rb我有: def show @taxon = Taxon.find_by_permalink(params[:id]) return unless @taxon @taxonomy = Spree::Taxonomy.all @taxon_title = Spree::Taxon.all @searcher = Spree::Config.searcher_class.new(params.merge(:taxon => @taxon.id)) @searcher.current_user = try_spree_current_user @searcher.current_currency = current_currency @products = @searcher.retrieve_products respond_with(@taxon) end 在分类单位#show我有:(我知道这是错的) 当我访问mysite.com/t/women/long-sleeve时,rails调试器显示: controller: spree/taxons action: show id: women/long-sleeve 如何在内部访问动作的id,以便在控制器/视图中我可以执行以下操作: ‘如果id等于’女’渲染“spree / shared /#{title.name.downcase}”’ title是分类标准的名称? 我想我需要在控制器的演出动作中找到(params [:something],但我对params有点不清楚。 * * * @ beck03076这是一个很棒的技巧。 […]

如何在Rails中访问嵌套参数

在Controller中,我正在尝试访问深度嵌套的参数。 这是我的参数跟踪。 Parameters: {“utf8″=>”✓”, “authenticity_token”=>”2j+Nh5C7jPkNOsQnWoA0wtG/vWxLMpyKt6aiC2UmxgY=”, “inventory”=>{“ingredients_attributes”=>{“0″=>{“ingredient_name”=>”Bread”}}, “purchase_date”=>”11”, “purchase_price”=>”11”, “quantity_bought”=>”11”}, “commit”=>”Create Inventory”} 我正试图从中检索“面包”。 我尝试了params[:inventory][:ingredient][:ingredient_name]和其他变种。 什么是正确的styntax? 如果重要, Inventory has_many :ingredients Inventory accepts_nested_attributes_for :inventories 谢谢!

使用动态变量渲染部分rails

我试图根据用户所在的分类单元渲染部分内容。 在我的application.html.erb布局中,我有以下代码行: 在taxons控制器中,在show方法中,我有: @taxon_id = params[:id].split(‘/’).first 在分类单位#show我有: 当我运行它时,我得到一个SyntaxError。 但是在分类中#show如果我只是输入: 没有’= true’然后页面呈现,输出’@enable_women’。 所以我知道它正在获取正确的变量,我只需要将该变量设置为true。 我错过了什么? 非常感谢。

更新配置文件而不更新密码

我希望能够更新我的用户信息,而无需在每次编辑任何其他属性时让用户设置密码。 我目前的validation是: validates :password, presence: true, length: { minimum: 8 } validates :password_confirm, presence: true 我怎么能让这个有条件? 如果密码和password_confirm属性在params中,那么只需要这些validation就很聪明。 我可以使用一些关于如何实现这一点的想法。 谢谢。

button_to没有从params hash传递正确的id

button_to未将正确的id传递给line_item。 在下面的日志中,您会看到bike_id从正确的’86’变为不正确的’1’(巧合的是我的user_id)。 任何帮助,将不胜感激。 下面是我的development.log中的错误,然后是我的视图和控制器中的代码。 谢谢。 development.log Started POST “/line_items?bike_id=86” for 127.0.0.1 at 2011-08-01 18:09:52 -0400 DEPRECATION WARNING: Setting filter_parameter_logging in ActionController is deprecated and has no longer effect, please set ‘config.filter_parameters’ in config/application.rb instead. (called from at /Users/willdennis/rails_projects/spinlister/app/controllers/application_controller.rb:8) Processing by LineItemsController#create as HTML Parameters: {“authenticity_token”=>”5GYQqvf7U5awhLrZ9Aw910ETf2kqOk3PI315jkjEfMU=”, “bike_id”=>”86”} [1m[35mCart Load (0.6ms)[0m SELECT “carts”.* FROM “carts” WHERE (“carts”.”id” […]

如何在RoR中调用方法并发送新参数?

假设我有方法A. def methodA note = Note.find(params[:id]) note.link = params[:link] note.linktype = params[:linktype] note.save redirect_to(notes_url) end 当我从这样的视图调用此方法时,它工作正常 0), methodA_path(:linktype => w.linktype, :link => w.link, :id => @note.id) %> 但是,如果我从同一控制器中的另一个方法调用该方法,如下所示: def methodB … methodA(:id => params[:id], :link => link, :linktype => “image”) end 我收到此错误: wrong number of arguments (1 for 0) methodA获取的参数仍然与methodB获得的参数相同,而不是我从methodB发送的参数。 我该如何解决这个问题? 感谢阅读。

忽略搜索中的大写,小写和重音

我这里有一个带filter的搜索系统。 这个系统就像魅力一样,但我有一些问题,包括羽毛/大写和重音。 例如,如果我搜索“marée”我有结果,但如果我搜索“MAREE”或“Marée”或“maree”。 我没有结果。 我想解决这个问题。 我怎么解决这个问题? 谢谢。 我的控制器 def resultnohome if params[:query].blank? redirect_to action: :index and return else @campings = Camping.searchi(params[:query], params[:handicap], params[:animaux], params[:television], params[:plage], params[:etang], params[:lac]) if params[:query] == “aube” @pub = Camping.find_by_id(1) else end end end 我的模特 def self.searchi(query, handicap, animaux, television, plage, etang, lac) return scoped unless query.present? result = left_outer_joins(:caracteristiquetests, :situations).where(‘nomdep […]

在Rails中,我们应该如何在java脚本中获取参数?

当我使用代码 我可以在页面中获取宽度值,例如 但是如果我想在同一页面的java脚本中获取宽度值,我真的不知道。 所以我的待定解决方案是隐藏div中的值,然后使用$(’div’)。text()来检索值。 所以我只想知道我们是否有其他方法来获取java脚本在rails中传递的参数?

如何使用XHR将附件(图像)和嵌套参数发送到titanium的uplaoad文件?

我正在尝试将图片从手机的照片库上传到服务器。 图库正在打开。 这是我的代码。 var win = Ti.UI.createWindow({ navBarHidden : true, }); var ind = Titanium.UI.createProgressBar({ width : 200, height : 50, min : 0, max : 1, value : 0, style : Titanium.UI.iPhone.ProgressBarStyle.PLAIN, top : 10, message : ‘Uploading Image’, font : { fontSize : 12, fontWeight : ‘bold’ }, color : ‘#888’ }); win.add(ind); […]