Custom Autocomplete Field - Making a field lowercase

I’m trying to humanize() the results that appear in the autocomplet drop
down list.

First i customised the controller.

In the render line on the controller it is saying “i want to use
locality on
each of the @items”.
So locality is what i want to humanize".

My ideas so far is to:
Customise the PostCode object so that when auto_complete_result trys to
call
item.locality, but i’ve tried overridding both def locality and def[]
and it
doesn’t seam to work.

The other idea is to create a rhtml template that generates the
auto_complete_return… but I have no idea how to do that.

Here’s the code:

View:
<%= text_field_with_auto_complete :post_code, :locality, :cols => 40 %>
Controller:
def auto_complete_for_post_code_locality
find_options = {
:conditions => [ “LOWER(locality) LIKE ?”,
params[:post_code][:locality].downcase + ‘%’ ],
:order => “locality ASC”,
:limit => 10 }
@items = PostCode.find(:all, find_options)
render :inline => “<%= auto_complete_result @items, ‘locality’
%>”
end

def auto_complete_result(entries, field, phrase = nil)
return unless entries
items = entries.map { |entry| content_tag(“li”, phrase ?
highlight(entry[field], phrase) : h(entry[field])) }
content_tag(“ul”, items.uniq)
end

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs