Hey Edgar, Does http://github.com/rails/rails/commit/95c609357e78106e9673931d3f60d8ff3cc0a0cd fix it for you ?
Thanks. On Thu, Oct 16, 2008 at 11:03 PM, Edgar J. Suárez <[EMAIL PROTECTED]> wrote: > Sorry for the commit link, it is: > > http://github.com/rails/rails/commit/517bc500ed95a84fd2aadff34fdc14cb7965bc6b > > / introduced the new method proxy_respond_to?... > > Edgar J. Suarez > > On Oct 16, 3:57 pm, "Edgar J. Suárez" <[EMAIL PROTECTED]> wrote: >> >> Commithttp://github.com/rails/rails/commit/517bc500ed95a84fd2aadff34fdc14cb... >> the new method proxy_respond_to?, but it has a bug. >> >> Suppose the following case (it's using will_paginate plugin) >> >> class User < ActiveRecord::Base >> has_many :articles >> end >> >> Then you call: >> >> u = User.first >> u.articles # => [some articles...] >> u.articles # => >> ArgumentError: wrong number of arguments (2 for 1) >> from >> .../activerecord/lib/active_record/associations/association_proxy.rb:78:in >> `proxy_respond_to?' >> from >> .../activerecord/lib/active_record/associations/association_proxy.rb:78:in >> `respond_to?' >> from >> .../vendor/plugins/will_paginate/lib/will_paginate/finder.rb:155:in >> `respond_to?' >> from .../activerecord/lib/active_record/associations.rb:1287:in >> `articles' >> from (irb):3 >> >> As you can see, the bug is caused in the will_paginate plugin because it >> pass two params to the super respond_to? >> >> def respond_to?(method, include_priv = false) #:nodoc: >> case method.to_sym >> when :paginate, :paginate_by_sql >> true >> else >> super(method.to_s.sub(/^paginate/, 'find'), include_priv) >> end >> end >> >> So the fix should be adding an extra param to proxy_respond_to? >> >> def proxy_respond_to?(method, include_priv = false) >> super || @reflection.klass.respond_to?(method, include_priv) >> end >> >> How could I test this to submit a patch? >> >> PS: Even this is kinda curious because it throws the Exception after the >> second time it's called, not the first one. Haven't gone that deep yet. >> >> Regards. >> >> Edgar J. Suarez > > > > -- Cheers! - Pratik http://m.onkey.org --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Core" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/rubyonrails-core?hl=en -~----------~----~----~----~------~----~------~--~---
