Ben*_*Ben 2 jquery autocomplete ruby-on-rails-3
我安装了JQuery令牌输入插件. https://github.com/loopj/jquery-tokeninput 自动完成工作正常,但我遇到了多个模型属性的搜索情况.例如,我有一个药物模型,模型属性包括名称和活性成分
我正在使用meta_where gem来搜索多个字段,并且它正常工作; 检查json输出显示我的Drug.where()方法返回正确的结果行.但是,在前端,jQuery只使用药物名称填充自动完成框.如何让jQuery在自动完成框中显示多个模型属性?理想情况下,我想在自动完成下拉列表中显示类似"model.name(model.active_ingredient)"的内容.现在,jQuery tokeninput正在获取正确的行,但只显示名称.如何显示模型的其他属性?
谢谢
你可以将json的名称和active_ingredient结合起来,因为你可以使用的就是名字:"Aspirin(Mentol)"
当你从控制器返回时,将它分开,就像你需要它一样.
(在你的药物模型中)
def fullname
"#{name} (#{active_ingrdient})"
end
Run Code Online (Sandbox Code Playgroud)
您只需要使用您的fullname属性在json fill中设置name:参数
format.json do
render :json => @drugs.map { |drug| drug.as_json(:only => :id, :methods => :name) }
end
Run Code Online (Sandbox Code Playgroud)
手动设置:
format.json do
render :json => @drugs.map { |drug| {:id => drug.id, :name => drug.fullname} }
end
Run Code Online (Sandbox Code Playgroud)
希望能进一步帮助你
| 归档时间: |
|
| 查看次数: |
1709 次 |
| 最近记录: |