Argument Error?

View layer:

<%= thumbnail_tag (@content_page.picture1), :border => 0, :width => 489,
:height => 236 %>

Helper layer:

def thumbnail_tag(picture, options = {})
link_to(scale_image_tag(picture, options.merge({:border => 0})),
“/settings/view_image/#{picture.id}”, :popup => ["_blank",
“width=#{picture.width+15},height=#{picture.height + 10}”])
end

Can someone help me diagnose this problem?

wrong number of arguments (2 for 0)

On 2 June 2010 09:57, Pale H. [email protected] wrote:

“width=#{picture.width+15},height=#{picture.height + 10}”])
end

Can someone help me diagnose this problem?

wrong number of arguments (2 for 0)

What method is it saying has too many arguments? The call to
‘thumbnail_tag’ or to ‘scale_image_tag’ or to ‘link_to’?

Michael P. wrote:

What method is it saying has too many arguments? The call to
‘thumbnail_tag’ or to ‘scale_image_tag’ or to ‘link_to’?

Apologies. thumbnail_tag is throwing the error.

On 2 June 2010 10:12, Pale H. [email protected] wrote:

Michael P. wrote:

What method is it saying has too many arguments? The call to
‘thumbnail_tag’ or to ‘scale_image_tag’ or to ‘link_to’?

Apologies. thumbnail_tag is throwing the error.

Really? Strange.
What happens if you try to call thumbnail_tag with no arguments?

Michael P. wrote:

Really? Strange.
What happens if you try to call thumbnail_tag with no arguments?

I get exactly the same error. I don’t see the logic in this problem.
Hence my post.

On 2 June 2010 10:22, Pale H. [email protected] wrote:

Michael P. wrote:

Really? Strange.
What happens if you try to call thumbnail_tag with no arguments?

I get exactly the same error. I don’t see the logic in this problem.
Hence my post.

Can you post a few extra lines from the error messages you get in both
cases; I’m curious if they’re exactly the same…

Michael P. wrote:

On 2 June 2010 10:22, Pale H. [email protected] wrote:

Michael P. wrote:

Really? Strange.
What happens if you try to call thumbnail_tag with no arguments?

I get exactly the same error. I don’t see the logic in this problem.
Hence my post.

Can you post a few extra lines from the error messages you get in both
cases; I’m curious if they’re exactly the same…

Case 1 (with arguments):

wrong number of arguments (2 for 0)

Extracted source (around line #2):

1: <% if @content_page.has_picture1? %>
2: <%= thumbnail_tag @content_page.picture1, :border => “0”, :width =>
“288” %>
3: <% else %>
4: <% if File.exists?(“#{RAILS_ROOT}/public/images/default_image.jpg”)
%>
5: <%= image_tag “default_image.jpg”, :border => “0”, :width =>
“288” %>

Case 2 (without arguments):

wrong number of arguments (2 for 0)

Extracted source (around line #2):

1: <% if @content_page.has_picture1? %>
2: <%= thumbnail_tag @content_page.picture1 %>
3: <% else %>
4: <% if File.exists?(“#{RAILS_ROOT}/public/images/default_image.jpg”)
%>
5: <%= image_tag “default_image.jpg”, :border => “0”, :width =>
“288” %>

On 2 June 2010 10:32, Pale H. [email protected] wrote:

Case 1 (with arguments):
Case 2 (without arguments):

No, sorry; I meant the stack trace message that tells you which lines
of which files were executing.
If it’s easier, maybe just past the whole message into a pastebin
service (http://gist.github.com/ or http://pastebin.com/ etc)

Michael P. wrote:

No, sorry; I meant the stack trace message that tells you which lines
of which files were executing.
If it’s easier, maybe just past the whole message into a pastebin
service (http://gist.github.com/ or http://pastebin.com/ etc)

Apologies - here are the full stack traces.

Case 1 (with arguments):

vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:177:in
url' vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:177:in send’
vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:177:in
method_missing' app/helpers/application_helper.rb:44:in scale_image_tag’
app/helpers/application_helper.rb:51:in thumbnail_tag' app/views/web/_layout1_content.rhtml:2:in _run_erb_47app47views47web47_layout1_content46rhtml’
vendor/rails/actionpack/lib/action_view/base.rb:338:in send' vendor/rails/actionpack/lib/action_view/base.rb:338:in execute’
vendor/rails/actionpack/lib/action_view/template_handlers/compilable.rb:29:in
send' vendor/rails/actionpack/lib/action_view/template_handlers/compilable.rb:29:in render’
vendor/rails/actionpack/lib/action_view/partial_template.rb:20:in
render' vendor/rails/actionpack/lib/action_controller/benchmarking.rb:26:in benchmark’
vendor/rails/activesupport/lib/active_support/core_ext/benchmark.rb:8:in
realtime' vendor/rails/actionpack/lib/action_controller/benchmarking.rb:26:in benchmark’
vendor/rails/actionpack/lib/action_view/partial_template.rb:19:in
render' vendor/rails/actionpack/lib/action_view/template.rb:22:in render_template’
vendor/rails/actionpack/lib/action_view/partials.rb:110:in
render_partial' vendor/rails/actionpack/lib/action_view/base.rb:273:in render’
app/views/web/content2.rhtml:1:in
_run_erb_47app47views47web47content246rhtml' vendor/rails/actionpack/lib/action_view/base.rb:338:in send’
vendor/rails/actionpack/lib/action_view/base.rb:338:in execute' vendor/rails/actionpack/lib/action_view/template_handlers/compilable.rb:29:in send’
vendor/rails/actionpack/lib/action_view/template_handlers/compilable.rb:29:in
render' vendor/rails/actionpack/lib/action_view/template.rb:35:in render’
vendor/rails/actionpack/lib/action_view/template.rb:22:in
render_template' vendor/rails/actionpack/lib/action_view/base.rb:245:in render_file’
vendor/rails/actionpack/lib/action_controller/base.rb:1108:in
render_for_file' vendor/rails/actionpack/lib/action_controller/base.rb:841:in render_with_no_layout’
vendor/rails/actionpack/lib/action_controller/layout.rb:251:in
render_without_benchmark' vendor/rails/actionpack/lib/action_controller/benchmarking.rb:51:in render’
vendor/rails/activesupport/lib/active_support/core_ext/benchmark.rb:8:in
realtime' vendor/rails/actionpack/lib/action_controller/benchmarking.rb:51:in render’
vendor/rails/actionpack/lib/action_controller/base.rb:1157:in
default_render' vendor/rails/actionpack/lib/action_controller/base.rb:1168:in perform_action_without_filters’
vendor/rails/actionpack/lib/action_controller/filters.rb:580:in
call_filters' vendor/rails/actionpack/lib/action_controller/filters.rb:573:in perform_action_without_benchmark’
vendor/rails/actionpack/lib/action_controller/benchmarking.rb:68:in
perform_action_without_rescue' /usr/lib/ruby/1.8/benchmark.rb:293:in measure’
vendor/rails/actionpack/lib/action_controller/benchmarking.rb:68:in
perform_action_without_rescue' vendor/rails/actionpack/lib/action_controller/rescue.rb:201:in perform_action_without_caching’
vendor/rails/actionpack/lib/action_controller/caching/sql_cache.rb:13:in
perform_action' vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb:33:in cache’
vendor/rails/activerecord/lib/active_record/query_cache.rb:8:in cache' vendor/rails/actionpack/lib/action_controller/caching/sql_cache.rb:12:in perform_action’
vendor/rails/actionpack/lib/action_controller/base.rb:529:in send' vendor/rails/actionpack/lib/action_controller/base.rb:529:in process_without_filters’
vendor/rails/actionpack/lib/action_controller/filters.rb:569:in
process_without_session_management_support' vendor/rails/actionpack/lib/action_controller/session_management.rb:130:in process’
vendor/rails/actionpack/lib/action_controller/base.rb:389:in process' vendor/rails/actionpack/lib/action_controller/dispatcher.rb:149:in handle_request’
vendor/rails/actionpack/lib/action_controller/dispatcher.rb:107:in
dispatch' vendor/rails/actionpack/lib/action_controller/dispatcher.rb:104:in synchronize’
vendor/rails/actionpack/lib/action_controller/dispatcher.rb:104:in
dispatch' vendor/rails/actionpack/lib/action_controller/dispatcher.rb:120:in dispatch_cgi’
vendor/rails/actionpack/lib/action_controller/dispatcher.rb:35:in
dispatch' vendor/rails/railties/lib/fcgi_handler.rb:103:in process_request’
vendor/rails/railties/lib/fcgi_handler.rb:153:in with_signal_handler' vendor/rails/railties/lib/fcgi_handler.rb:101:in process_request’
vendor/rails/railties/lib/fcgi_handler.rb:78:in process_each_request' /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:612:in each_cgi’
/usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:117:in session' /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:104:in each_request’
/usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:36:in each' /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:609:in each_cgi’
vendor/rails/railties/lib/fcgi_handler.rb:77:in process_each_request' vendor/rails/railties/lib/fcgi_handler.rb:76:in catch’
vendor/rails/railties/lib/fcgi_handler.rb:76:in process_each_request' vendor/rails/railties/lib/fcgi_handler.rb:50:in process!’
vendor/rails/railties/lib/fcgi_handler.rb:24:in `process!’
dispatch.fcgi:24

Case 2 (without arguments):

vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:177:in
url' vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:177:in send’
vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:177:in
method_missing' app/helpers/application_helper.rb:44:in scale_image_tag’
app/helpers/application_helper.rb:51:in thumbnail_tag' app/views/web/_layout1_content.rhtml:2:in _run_erb_47app47views47web47_layout1_content46rhtml’
vendor/rails/actionpack/lib/action_view/base.rb:338:in send' vendor/rails/actionpack/lib/action_view/base.rb:338:in execute’
vendor/rails/actionpack/lib/action_view/template_handlers/compilable.rb:29:in
send' vendor/rails/actionpack/lib/action_view/template_handlers/compilable.rb:29:in render’
vendor/rails/actionpack/lib/action_view/partial_template.rb:20:in
render' vendor/rails/actionpack/lib/action_controller/benchmarking.rb:26:in benchmark’
vendor/rails/activesupport/lib/active_support/core_ext/benchmark.rb:8:in
realtime' vendor/rails/actionpack/lib/action_controller/benchmarking.rb:26:in benchmark’
vendor/rails/actionpack/lib/action_view/partial_template.rb:19:in
render' vendor/rails/actionpack/lib/action_view/template.rb:22:in render_template’
vendor/rails/actionpack/lib/action_view/partials.rb:110:in
render_partial' vendor/rails/actionpack/lib/action_view/base.rb:273:in render’
app/views/web/content2.rhtml:1:in
_run_erb_47app47views47web47content246rhtml' vendor/rails/actionpack/lib/action_view/base.rb:338:in send’
vendor/rails/actionpack/lib/action_view/base.rb:338:in execute' vendor/rails/actionpack/lib/action_view/template_handlers/compilable.rb:29:in send’
vendor/rails/actionpack/lib/action_view/template_handlers/compilable.rb:29:in
render' vendor/rails/actionpack/lib/action_view/template.rb:35:in render’
vendor/rails/actionpack/lib/action_view/template.rb:22:in
render_template' vendor/rails/actionpack/lib/action_view/base.rb:245:in render_file’
vendor/rails/actionpack/lib/action_controller/base.rb:1108:in
render_for_file' vendor/rails/actionpack/lib/action_controller/base.rb:841:in render_with_no_layout’
vendor/rails/actionpack/lib/action_controller/layout.rb:251:in
render_without_benchmark' vendor/rails/actionpack/lib/action_controller/benchmarking.rb:51:in render’
vendor/rails/activesupport/lib/active_support/core_ext/benchmark.rb:8:in
realtime' vendor/rails/actionpack/lib/action_controller/benchmarking.rb:51:in render’
vendor/rails/actionpack/lib/action_controller/base.rb:1157:in
default_render' vendor/rails/actionpack/lib/action_controller/base.rb:1168:in perform_action_without_filters’
vendor/rails/actionpack/lib/action_controller/filters.rb:580:in
call_filters' vendor/rails/actionpack/lib/action_controller/filters.rb:573:in perform_action_without_benchmark’
vendor/rails/actionpack/lib/action_controller/benchmarking.rb:68:in
perform_action_without_rescue' /usr/lib/ruby/1.8/benchmark.rb:293:in measure’
vendor/rails/actionpack/lib/action_controller/benchmarking.rb:68:in
perform_action_without_rescue' vendor/rails/actionpack/lib/action_controller/rescue.rb:201:in perform_action_without_caching’
vendor/rails/actionpack/lib/action_controller/caching/sql_cache.rb:13:in
perform_action' vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb:33:in cache’
vendor/rails/activerecord/lib/active_record/query_cache.rb:8:in cache' vendor/rails/actionpack/lib/action_controller/caching/sql_cache.rb:12:in perform_action’
vendor/rails/actionpack/lib/action_controller/base.rb:529:in send' vendor/rails/actionpack/lib/action_controller/base.rb:529:in process_without_filters’
vendor/rails/actionpack/lib/action_controller/filters.rb:569:in
process_without_session_management_support' vendor/rails/actionpack/lib/action_controller/session_management.rb:130:in process’
vendor/rails/actionpack/lib/action_controller/base.rb:389:in process' vendor/rails/actionpack/lib/action_controller/dispatcher.rb:149:in handle_request’
vendor/rails/actionpack/lib/action_controller/dispatcher.rb:107:in
dispatch' vendor/rails/actionpack/lib/action_controller/dispatcher.rb:104:in synchronize’
vendor/rails/actionpack/lib/action_controller/dispatcher.rb:104:in
dispatch' vendor/rails/actionpack/lib/action_controller/dispatcher.rb:120:in dispatch_cgi’
vendor/rails/actionpack/lib/action_controller/dispatcher.rb:35:in
dispatch' vendor/rails/railties/lib/fcgi_handler.rb:103:in process_request’
vendor/rails/railties/lib/fcgi_handler.rb:153:in with_signal_handler' vendor/rails/railties/lib/fcgi_handler.rb:101:in process_request’
vendor/rails/railties/lib/fcgi_handler.rb:78:in process_each_request' /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:612:in each_cgi’
/usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:117:in session' /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:104:in each_request’
/usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:36:in each' /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:609:in each_cgi’
vendor/rails/railties/lib/fcgi_handler.rb:77:in process_each_request' vendor/rails/railties/lib/fcgi_handler.rb:76:in catch’
vendor/rails/railties/lib/fcgi_handler.rb:76:in process_each_request' vendor/rails/railties/lib/fcgi_handler.rb:50:in process!’
vendor/rails/railties/lib/fcgi_handler.rb:24:in `process!’
dispatch.fcgi:24

To add to that, here is the scale_image_tag helper method:

def scale_image_tag(picture, options = {})
if picture

raise options.to_yaml

image_tag(picture.url(options[:width], options[:height]), 

options.merge({:alt => picture.image_alt, :title => picture.image_alt}))
else
image_tag(“clear.gif”, options)
end
end

Michael P. wrote:

Pastebin! Save the list’s bandwith and our eyes! :wink:

Anyway; they’re both complaining about ‘scale_image_tag’…
app/helpers/application_helper.rb:44:in `scale_image_tag’

I’d stick some breakpoints on there, and see what’s happening.

Solved. Thanks for your advice.

On 2 June 2010 10:49, Pale H. [email protected] wrote:

Michael P. wrote:

No, sorry; I meant the stack trace message that tells you which lines
of which files were executing.
If it’s easier, maybe just past the whole message into a pastebin
service (http://gist.github.com/ or http://pastebin.com/ etc)

Apologies - here are the full stack traces.

Pastebin! Save the list’s bandwith and our eyes! :wink:

Anyway; they’re both complaining about ‘scale_image_tag’…
app/helpers/application_helper.rb:44:in `scale_image_tag’

I’d stick some breakpoints on there, and see what’s happening.

On 2 June 2010 12:29, Pale H. [email protected] wrote:

I’d stick some breakpoints on there, and see what’s happening.

Solved. Thanks for your advice.

Do you fancy letting the list know what the solution was? … it may
help someone else in future.

Michael P. wrote:

Do you fancy letting the list know what the solution was? … it may
help someone else in future.

Erroneous:

def scale_image_tag(picture, options = {})
if picture
#raise options.to_yaml
image_tag(picture.url(options[:width], options[:height]),
options.merge({:alt => picture.image_alt, :title => picture.image_alt}))
else
image_tag(“clear.gif”, options)
end
end

def thumbnail_tag(picture, options = {})
link_to(scale_image_tag(picture, options.merge({:border => 0})),
“/settings/view_image/#{picture.id}”, :popup => ["_blank",
“width=#{picture.width+15},height=#{picture.height + 10}”])
end

Working:

def scale_image_tag(picture, options = {})
if picture
image_tag(Picture.image_url(picture.resize(options[:width],
options[:height])), options.merge({:alt => picture.image_alt, :title =>
picture.image_alt}))
else
image_tag(“clear.gif”, options)
end
end

def thumbnail_tag(picture, options = {})
link_to(scale_image_tag(picture, options.merge({:border => 0})),
{:controller => ‘settings’, :action => ‘view_image’, :id => picture},
:popup => ["_blank", "width=#{picture.width+15},height=#{picture.height

  • 10}"])
    end

Michael P. wrote:

On 2 June 2010 10:49, Pale H. [email protected] wrote:

Michael P. wrote:

No, sorry; I meant the stack trace message that tells you which lines
of which files were executing.
If it’s easier, maybe just past the whole message into a pastebin
service (http://gist.github.com/ or http://pastebin.com/ etc)

Apologies - here are the full stack traces.

Pastebin! Save the list’s bandwith and our eyes! :wink:

Off topic, but…no! Don’t make me go elsewhere to see the code under
discussion! Keep code discussed here on the list.

Best,

Marnen Laibow-Koser
http://www.marnen.org
[email protected]