Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在助手中传递参数_Ruby On Rails_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails 在助手中传递参数

Ruby on rails 在助手中传递参数,ruby-on-rails,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 4,在我的微型模型视图页面上,我有以下代码 <%= content_setmini_links_with_quantity(@miniature) %> 这反过来又引用了这个微型辅助方法 def content_setmini_links_with_quantity(miniature) miniature.reverse_contents.map{|content| content_setmini_link_with_quantity(content)}.join(' ').ht

在我的微型模型视图页面上,我有以下代码

<%= content_setmini_links_with_quantity(@miniature) %>
这反过来又引用了这个微型辅助方法

def content_setmini_links_with_quantity(miniature)
  miniature.reverse_contents.map{|content| content_setmini_link_with_quantity(content)}.join(' ').html_safe
end
def content_setmini_link_with_quantity(content)
  string = (tag "td"), (link_to top_pic(content.setmini_id), content.setmini), (link_to content.setmini.name, content.setmini)
  string << " x#{content.quantity}" if content.quantity.present?
  return string
end
def top_pic
  @miniature = Miniature.find(params[:setmini_id])
  if @miniature.collections.first.photo != nil 
    image_tag(@miniature.collections.first.photo.url(:icon), :retina => true, :class => "curvediconminiset")
  else
    image_tag("https://system/stock/blank.gif", :retina => true, :class => "curvediconminiset")
  end
end
但是我不知道如何正确地调用top_pic。
据我所知,在
content\u setmini\u link\u with\u quantity(content)
中,唯一可用的参数是content
Content.setmini_id
是我想用来查找要显示的
@mini
的参数,但我无法让它工作

非常感谢您的帮助。

您打电话来

top_pic(content.setmini_id)
但是您的
top\u pic
方法定义没有定义参数

将顶部图片的定义和第一行更改为

def top_pic(setmini_id)
  @miniature = Miniature.find(setmini_id)

忘记在助手中使用
params

啊,我明白了。在助手中,每个方法都有一个已定义的参数,不能使用参数。非常感谢。我现在得到了“nil:NilClass的未定义方法'photo'”错误,但我认为这是另一个问题,您已经回答了这个问题。在今天的每一个阶段都被这个问题所困扰。