Autocompletado de campos en Ruby on Rails
Después de muchas pruebas he conseguido implementar el autocompletado en Ruby on Rails. Os explico: Lo primero es incluir en el layout las librerias javascript necesarias
<%= javascript_include_tag "prototype", "effects", "controls" %>
En la vista se crea un campo autocomplete tal que así
<%= text_field_with_auto_complete :cliente, :poblacion, { :size => 25 }, :skip_style => true -%>
Ahora es necesario crear en el controlador un método como éste
def auto_complete_for_cliente_poblacion
search = params[:cliente][:poblacion]
param= search.downcase + '%'
find_options= {:conditions => [ 'LOWER(poblacion) LIKE ?', param ], :order => 'poblacion ASC', :limit => 5, :group => "poblacion"}
@clientes = Cliente.find(:all, find_options)
render :partial => "autoupdate_poblacion"
end
Y por último creamos el partial _autoupdate_poblacion.rhtml y añadimos lo siguiente
<ul class="autocomplete_list">
<% for cliente in @clientes.to_a -%>
<li class="autocomplete_item"><%= cliente.poblacion %></li>
<% end -%>
</ul>
Si quereis darle un poco de formato añadís al css las clases autocomplete_list y autocomplete_item.





