我正在使用带有rails 3 web应用程序的https://github.com/crowdint/rails3-jquery-autocomplete,我希望自动填充字段不仅基于该字段上键入的内容,还基于同一表单中其他字段的值
以下是一个例子:
class Country < ActiveRecord::Base
has_many :academic_titles_suggestions
end
class AcademicTitleSuggestion < ActiveRecord::Base
belongs_to :country
end
class People < ActiveRecord::Base
belongs_to :country
# has field a field academic_title:string
end
现在,当我显示一个人物的表格时,我想要一个国家的下拉列表和一个基于该国家学术头衔建议的学术头衔的建议框
您对如何做到这一点有什么建议吗?
答案 0 :(得分:2)
所以你需要发送额外的字段并考虑它们进行搜索。
您可以使用:fields
选项发送额外字段:
f.autocomplete_field :academic_title, fields: { country: "#country" }
然后你需要考虑这个额外的字段进行搜索。
class AcademicTitleController < ActiveRecord::Base
def autocomplete_academic_title
country = params[:country]
title = params[:title]
titles = AcademicTitleSuggestion.joins(:country).where('countries.name = ? AND academic_title_suggestions.title LIKE ?', country, "%#{title}%").order(:title)
render json: titles.map { |title| { id: title.id, label: title.title, value: title.title } }
end
end
中的更多信息