Ruby rails – jquery auto complete – 为列表项组合多个值

如何解析rails实例变量的值以创建jQuery的自动完整列表? 所以我的’/ user / search’返回一个实例变量,每个项目有多个值。 我想把它们组合起来作为列表项目。

def search if (params[:term] =~ /[a-zA-Z]/) @result = User.FindLdap("sAMAccountName", params[:term]) else @result = User.FindLdap("idnumber", params[:term]) end respond_to do |format| format.html { render :partial => 'text_for_autocomplete'} format.js end end 

我正在使用jQuery的示例代码,但它有一种方法来显示每个项目列表。 在我的情况下,我检索多个ldap属性,我想显示每个列表项的属性值。 所以每个列表项应该像""#{sAMAccountName}", "#{idnumber}""用逗号分隔,而不仅仅是在文本字段中输入的idnumber的值。

 $(function() { $("#term").autocomplete({ source: function (request, response) { $.post("/users/search", request, response); }, minLength: 2, select: function( event, ui ) { log( ui.item ? "Selected: " + ui.item.value + " aka " + ui.item.id : "Nothing selected, input was " + this.value ); } #No idea how it can be done here. }); }); 

我在列表中得到这个,部分渲染的html –

我在列表中得到了这个,实际部分渲染

首先,你需要看看JBuilder 。 JBuilder是json输出的强大,定义明确且可靠的解决方案。