I am trying to get more out of auto_complete than it apparently was designed to deliver. My problems seem to be two fold. 1 - I use aggregations on names... :first_name, :middle_initial, :last_name and then aggregate them using a composed_of :wholename thing auto_complete_for seems to be wired to only use table columns directly and gags on the aggregate form. 2 - foreign table columns - auto_complete_for seems to be unusable for obtaining matching values from a column in another table but I haven''t fully explored this since I was trying to get the aggregation per above and finally stayed within table and found that aggregations didn''t work period and when I checked out the api, I sort of knew why. So I ask...is there an auto_complete plugin/gem that I can''t seem to find that is like auto_complete on steroids? Thanks Craig
Hi Craig, I don''t know of any ''auto_complete on steroids'' but you can do alot more than the defaults if you write your own sql. If you take a look at Amy Hoy''s post of auto-complete she shows how to do this in the ''roll your own'' section. slash7.com/articles/2005/08/13/ajaxariffic-autocomplete-with-scriptaculous If you do that you should be able to use CONCAT in your sql statement to concat a few columns together. After that you''d probably want to get rid of the white space from your query because after the concat, you won''t have any white space between firstname,middle and last. (ie. EricAGoodwin ) Check out the example below. SELECT * FROM users WHERE CONCAT(firstname,middlename,lastname) #{params[:q].gsub(/\s/,'''')}; You should be able to write your own sql for the foreign tables columns as well. Cheers, Eric Goodwin> I am trying to get more out of auto_complete than it apparently was > designed to deliver. > > My problems seem to be two fold. > > 1 - I use aggregations on > names... :first_name, :middle_initial, :last_name and then aggregate > them using a composed_of :wholename thing > > auto_complete_for seems to be wired to only use table columns directly > and gags on the aggregate form. > > 2 - foreign table columns - auto_complete_for seems to be unusable for > obtaining matching values from a column in another table but I haven''t > fully explored this since I was trying to get the aggregation per above > and finally stayed within table and found that aggregations didn''t work > period and when I checked out the api, I sort of knew why. > > So I ask...is there an auto_complete plugin/gem that I can''t seem to > find that is like auto_complete on steroids? > > Thanks > > Craig > > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > lists.rubyonrails.org/mailman/listinfo/rails >
On Sun, 2006-02-26 at 05:10 +0000, Eric Goodwin wrote:> Hi Craig, > I don''t know of any ''auto_complete on steroids'' but you can do alot more > than the defaults if you write your own sql. > If you take a look at Amy Hoy''s post of auto-complete she shows how to do > this in the ''roll your own'' section. > > slash7.com/articles/2005/08/13/ajaxariffic-autocomplete-with-scriptaculous > > If you do that you should be able to use CONCAT in your sql statement to > concat a few columns together. After that you''d probably want to get rid > of the white space from your query because after the concat, you won''t > have any white space between firstname,middle and last. (ie. EricAGoodwin > ) > Check out the example below. > > SELECT * FROM users WHERE CONCAT(firstname,middlename,lastname) > #{params[:q].gsub(/\s/,'''')}; > > You should be able to write your own sql for the foreign tables columns as > well.---- yep - that looks like what I want to do. OK - makes for some excitement on an otherwise dull Saturday night. ;-) Thanks Craig