我浏览了auto_complete插件的railscast(这里是:http://railscasts.com/episodes/102-auto-complete-association),并且让它工作正常,即使我的设置略有不同。
但是这里有麻烦:在railscast中,示例是:belongs_to association,我有一个has_many:through。我正在使用collection_select来获取从下拉列表中选择的成分列表,但如果我可以使用自动完成功能,那将会更好。麻烦的是,来自collection_select的字段返回一个ingredient_id,这也是auto_complete所需的行为。有没有办法让这个工作与auto_complete插件一起使用?
我一直在寻找自动完成的剧本演示的链接,但它现在已经消失了:(
之前,使用collection_select:
<%= f.collection_select :ingredient_id, Ingredient.all, :id, :name, :prompt => "Select an Ingredient"%>
现在,使用auto_complete half-working:
<%= text_field_with_auto_complete :ingredient, :ingredient_name, {:size => 15}, {:url => formatted_ingredients_path(:js), :method => :get, :with => "'search=' + element.value"} %>
食谱模型:
has_many :ingredient_amounts
has_many :ingredients, :through => :ingredient_amounts
def ingredient_name
end
def ingredient_name=(name)
self.ingredient = Ingredient.find_by_name(name) unless name.blank?
end
答案 0 :(得分:1)
嘿,我想你可以在这里找到你想要的解决方案。我想知道如何在rails 3上实现这些功能,因为看起来自动完成助手已经消失了
无论如何看看它是否对你有帮助
http://blog.wolfman.com/articles/2006/10/23/getting-a-record-id-from-text_field_with_auto_complete