I''ve something like that: in layout : links looks that : <%= link_to month.strftime(''%B, %Y''), "/?y=#{month.strftime("%Y")}&m=#{month.strftime("%m")}" %> in controler I''ve : if params[:y] && params[:m] @posts = Post.find(:all,:order => ''created_at'' ,:conditions => [''extract(year from created_at) LIKE ? AND extract(month from created_at) LIKE ?'', params[:y], params[:m]] ) else @posts = Post.find(:all) end but in console I''ve got that sql code: SELECT * FROM "posts" WHERE (extract(year from created_at) LIKE E''2009'' AND extract(month from created_at) LIKE E''01'') ORDER BY created_at looks like this E near that LIKE broke everything some idea how to repair that -- 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Oskar Szrajer wrote:> I''ve something like that: > > in layout : > links looks that : > > <%= link_to month.strftime(''%B, %Y''), > "/?y=#{month.strftime("%Y")}&m=#{month.strftime("%m")}" %>Don''t write a raw URI path and query, and don''t use string surgery to create one. Add those items as the arguments to url_for(): <%= link_to month.strftime(''%B, %Y''), :y => month.year, :m => month.month %> (BTW naming a date ''month'' is kind''a tacky...) That would escape your URI correctly, but this can''t be your problem because either way these are just numbers, not punctuation that needs escapes.> in controler I''ve : > > if params[:y] && params[:m] > @posts = Post.find(:all,:order => ''created_at'' ,:conditions => > [''extract(year from created_at) LIKE ? AND extract(month from > created_at) LIKE ?'', params[:y], params[:m]] ) > else > @posts = Post.find(:all) > end > > > but in console I''ve got that sql code: > SELECT * FROM "posts" WHERE (extract(year from created_at) LIKE E''2009'' > AND extract(month from created_at) LIKE E''01'') ORDER BY created_at > > looks like this E near that LIKE broke everythingI can''t see where the E comes from, but why the LIKE? Your year and month have no % in them for LIKE to wildcard. Can your "functional" test call this action correctly? -- Phlip --~--~---------~--~----~------------~-------~--~----~ 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
I think there will not a problem in link_to but I''ve try to use a url_for LIKE in condition is not a problem too I''ve check with = and still getting something similary: @posts = Post.find(:all,:order => ''created_at'' ,:conditions => [''extract(year from created_at) = ? AND extract(month from created_at) = ?'', params[:y], params[:m]] ) gives : SELECT * FROM "posts" WHERE (extract(year from created_at) = E''2009'' AND extract(month from created_at) = E''01'') ORDER BY created_at still this E exist in sql code -- 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
hmm after changing LIKE to in sql code is still "E " but it''s start works, return proper page ?? now it''s big question for me what that E is and whay it''s work now? -- 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Oskar Szrajer wrote:> hmm after changing LIKE to > > in sql code is still "E " > > but it''s start works, return proper page ?? now it''s big question for me > what that E is and whay it''s work now?What is in the params = {}, in the output of your script/console when you run that? --~--~---------~--~----~------------~-------~--~----~ 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
ok I''ve got answer somewhere else : http://www.postgresql.org/docs/8.3/interactive/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS this E is a part of postgres "" -- 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Processing PostsController#index (for 127.0.0.1 at 2009-01-11 17:24:48) [GET] Parameters: {"m"=>"01", "y"=>"2009"} SQL (0.1ms) SET client_min_messages TO ''panic'' SQL (0.1ms) SET client_min_messages TO ''notice'' Post Load (4.5ms) SELECT * FROM "posts" WHERE (extract(year from created_at) = E''2009'' AND extract(month from created_at) = E''01'') ORDER BY created_at Rendering template within layouts/application Rendering posts/index SQL (1.1ms) SELECT count(*) AS count_all FROM "comments" WHERE ("comments".post_id = 2) CACHE (0.0ms) SELECT count(*) AS count_all FROM "comments" WHERE ("comments".post_id = 2) Rendered posts/_post (23.8ms) SQL (0.6ms) SELECT count(*) AS count_all FROM "comments" WHERE ("comments".post_id = 1) CACHE (0.0ms) SELECT count(*) AS count_all FROM "comments" WHERE ("comments".post_id = 1) Rendered posts/_post (4.5ms) Post Load (13.5ms) SELECT * FROM "posts" ORDER BY created_at Rendered arrays/_array (0.7ms) Completed in 72ms (View: 43, DB: 20) | 200 OK [http://127.0.0.1/?y=2009&m=01] -- 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---