我有以下控制器代码:
class NodesController < ApplicationController
def index
@nodes = Node.com_name_scope("27").find(:all, :conditions => ['COMPONENT_NAME LIKE ?', "#{params[:search]}%"])
respond_to do |format|
format.js {render :js => @nodes.map { |node| "<li>#{node.COMPONENT_NAME}</li>"}}
end
end
当我做:
http://localhost/myproject/nodes.js
我得到以下列表:
<li>Value A</li>
<li>Value B</li>
<li>Value C</li>
<li>Value D</li>
我想<ul>
在列表的开头和结尾插入一个标签,使其如下所示:
<ul>
<li>Value A</li>
<li>Value B</li>
<li>Value C</li>
<li>Value D</li>
</ul>
但是当我这样做时:
format.js {render :js => "ul" + @nodes.map { |node| "<li>#{node.COMPONENT_NAME}</li>"}+ "</ul>" }
它给了我以下错误消息:
TypeError in NodesController#index
can't convert Array into String
我的问题是如何<ul>
在列表的前面和末尾包含标签。
非常感谢你的帮助