Ruby on Rails Thursday, November 29, 2012




On Fri, Nov 30, 2012 at 12:57 PM, Soichi Ishida <lists@ruby-forum.com> wrote:
Rails 3.1.3

After watching
 http://railscasts.com/episodes/258-token-fields?autoplay=true
I have installed the similar functionality to my app.

However,

    def index
        @cities = City.all
        ...

does in fact give the list of all cities in the text field, but

     def index
        @cities = City.where("name like ?", "%#{params[:q]}%")
        ...

does NOT search cities at all.

Since above case works (though not incremental filter), the problem must
be the second query part.
But I don't see any problem in the where clause.  It does not raise any
errors at all. Simply, puts

"No results"

City.all returns all cities. The second query matches the city name to params[:q].
If params[:q] is empty, it will return all cities (at least that's what I get when I
tried it on the console using postgre).  If it isn't empty, it will match for cities whose
names match params[:q].  If you're using postgre, you may want to use ilike for
case insensitive matching.
 

Can you guess where the problem is?

soichi

--
Posted via http://www.ruby-forum.com/.

--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.





--
-------------------------------------------------------------
visit my blog at http://jimlabs.heroku.com

--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

No comments:

Post a Comment