Ruby on rails 在Rails中插入要链接到的文本
我有下面的标签Ruby on rails 在Rails中插入要链接到的文本,ruby-on-rails,Ruby On Rails,我有下面的标签 %span.tag-label = link_to "#{tag}" , :controller => "searches", :action => "search_tags", :search_type => search_type, :tag_type => tag_type, :tag =>"#{tag}" 我将标记传递给partial as集合: = render "shared/tag_item", :collection =&
%span.tag-label
= link_to "#{tag}" , :controller => "searches", :action => "search_tags", :search_type => search_type,
:tag_type => tag_type, :tag =>"#{tag}"
我将标记传递给partial as集合:
= render "shared/tag_item", :collection => @listing.keyword_list, :as => :tag,
:search_type => "Listing", :tag_type => nil
出于某种原因,我出现了以下错误:
wrong number of arguments (0 for 1)
在我看来
如果我只是把纯文本放到链接到“text”
和:标记=>“text”
上,那么它就可以工作了。
为什么我在“#{tag}”
中嵌入的文本在这种情况下不起作用
多谢各位。
更新显示错误跟踪:
`布局/应用程序中的Ended listings/show.html.haml(148.4ms)
在232ms内完成500个内部服务器错误
ActionView::Template::Error (wrong number of arguments (0 for 1)):
1: %span.tag-label
2: = link_to "#{tag.to_s}" , :controller => "searches", :action => "search_tags", :search_type => search_type,
3: :tag_type => tag_type, :tag =>"#{tag.to_s}"
<a href="txmt://open?url=file:///Users/app/views/shared/_tag_item.html.haml&line=2&column=1">app/views/shared/_tag_item.html.haml
ActionView::Template::Error(参数数目错误(0代表1)):
1:%span.tag-label
2:=链接到“#{tag.to_s}”,:controller=>“search”,:action=>“search_tags”,:search_type=>search_type,
3::tag_type=>tag_type,:tag=>“#{tag.to_s}”
app/views/shared/_tag_item.html.haml
不确定这是否能解决您的问题,但您不需要插入标记
变量。您只需将link\u写入标记
和:tag=>标记
将局部变量传递给partial时,您必须将呈现
方法传递给键:locals
。
尽管我不得不承认,我本以为这会给出一个名称错误,而不是参数错误。您的代码中是否存在搜索类型或标记类型方法?显示错误发生位置的错误跟踪。确保
link\u到“#{tag}”,
实际上是link\u到“#{tag}”,如果您只是输出(:controller=>“searches”),:action=>“search\u标记”的,:search_type=>search_type,:tag_type=>tag_type,:tag=>“#{tag}”)
而不是link_to..
是否按预期输出?是否可以包括完整的堆栈跟踪,或者至少包括生成错误的行号?
render "shared/tag_item", :collection => @listing.keyword_list, :as => :tag, :locals => { :search_type => "Listing", :tag_type => nil }