2011-11-23 110 views
0

我不確定這裏發生了什麼。mini_magick錯誤的參數數量(0代表1).resize

使用MiniMagick 3.3,一切工作正常,直到我試圖調整大小。

這條線使我得到一個錯誤的號碼參數錯誤:

image_file.resize "#{style.width}x#{style.height}" 

這似乎像它應該根據文檔做工精細。

這裏的痕跡:

wrong number of arguments (0 for 1) 
RAILS_ROOT: /tmn_core_cms 

Application Trace | Framework Trace | Full Trace 
/tmn_core_cms/vendor/gems/mini_magick-3.3/lib/mini_magick.rb:323:in `combine_options' 
/tmn_core_cms/vendor/gems/mini_magick-3.3/lib/mini_magick.rb:323:in `method_missing' 
/tmn_core_cms/lib/imagemodule.rb:15:in `apply_styles' 
/tmn_core_cms/lib/imagemodule.rb:11:in `apply_styles' 
/tmn_core_cms/app/models/asset.rb:143:in `site_image_render' 
/tmn_core_cms/app/controllers/articles_controller.rb:66:in `update' 
/tmn_core_cms/app/controllers/articles_controller.rb:65:in `update' 

IMAGE_FILE = MiniMagick :: Image.open(「#{RAILS_ROOT} /公/圖片/ I /標準/#{} baseimage.id /原來/#{baseimage .image_file_name}「)

的IMAGE_FILE被返回正確的對象(我測試的一切,我說的每一步,它的所有工作,直到我調整)

上面的部分表示在引發ArgumentError#ArticlesController更新

下面是完整的跟蹤:

ArgumentError in ArticlesController#update 

wrong number of arguments (0 for 1) 
RAILS_ROOT: /tmn_core_cms 

Application Trace | Framework Trace | Full Trace 
/tmn_core_cms/vendor/gems/mini_magick-3.3/lib/mini_magick.rb:323:in `combine_options' 
/tmn_core_cms/vendor/gems/mini_magick-3.3/lib/mini_magick.rb:323:in `method_missing' 
/tmn_core_cms/lib/imagemodule.rb:15:in `apply_styles' 
/tmn_core_cms/vendor/gems/will_paginate-2.3.15/lib/will_paginate/finder.rb:168:in `method_missing' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/associations/association_collection.rb:392:in `method_missing_without_paginate' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:215:in `each' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:215:in `send' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:215:in `method_missing' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/associations/association_collection.rb:392:in `method_missing_without_paginate' 
/tmn_core_cms/vendor/gems/will_paginate-2.3.15/lib/will_paginate/finder.rb:168:in `method_missing' 
/tmn_core_cms/vendor/gems/thinking-sphinx-1.3.20/lib/thinking_sphinx/active_record/has_many_association.rb:19:in `method_missing' 
/tmn_core_cms/lib/imagemodule.rb:11:in `apply_styles' 
/tmn_core_cms/app/models/asset.rb:143:in `site_image_render' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:178:in `send' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:178:in `evaluate_method' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:166:in `call' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:93:in `run' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:92:in `each' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:92:in `send' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:92:in `run' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:276:in `run_callbacks' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/callbacks.rb:344:in `callback' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/callbacks.rb:251:in `create_or_update' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/base.rb:2577:in `save_without_validation' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/validations.rb:1090:in `save_without_dirty' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/dirty.rb:79:in `save_without_transactions' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:229:in `send' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:229:in `with_transaction_returning_status' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:136:in `transaction' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:182:in `transaction' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:228:in `with_transaction_returning_status' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:196:in `save' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:208:in `rollback_active_record_state!' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:196:in `save' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:215:in `send' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:215:in `method_missing' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/autosave_association.rb:356:in `save_has_one_association' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/autosave_association.rb:182:in `autosave_associated_records_for_asset' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:178:in `send' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:178:in `evaluate_method' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:166:in `call' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:93:in `run' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:92:in `each' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:92:in `send' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:92:in `run' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/callbacks.rb:276:in `run_callbacks' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/callbacks.rb:344:in `callback' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/callbacks.rb:251:in `create_or_update' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/base.rb:2577:in `save_without_validation' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/validations.rb:1090:in `save_without_dirty' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/dirty.rb:79:in `save_without_transactions' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:229:in `send' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:229:in `with_transaction_returning_status' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:136:in `transaction' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:182:in `transaction' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:228:in `with_transaction_returning_status' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:196:in `save' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:208:in `rollback_active_record_state!' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:196:in `save' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/base.rb:2672:in `update_attributes_inside_transaction' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:229:in `send' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:229:in `with_transaction_returning_status' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb:136:in `transaction' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:182:in `transaction' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/transactions.rb:228:in `with_transaction_returning_status' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/base.rb:2667:in `update_attributes' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:215:in `send' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb:215:in `method_missing' 
/tmn_core_cms/app/controllers/articles_controller.rb:66:in `update' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/mime_responds.rb:106:in `call' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/mime_responds.rb:106:in `respond_to' 
/tmn_core_cms/app/controllers/articles_controller.rb:65:in `update' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/base.rb:1333:in `send' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/base.rb:1333:in `perform_action_without_filters' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/filters.rb:617:in `call_filters' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/filters.rb:610:in `perform_action_without_benchmark' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/core_ext/benchmark.rb:17:in `ms' 
/usr/local/lib/ruby/1.8/benchmark.rb:308:in `realtime' 
/tmn_core_cms/vendor/rails/activesupport/lib/active_support/core_ext/benchmark.rb:17:in `ms' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/rescue.rb:160:in `perform_action_without_flash' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/flash.rb:151:in `perform_action' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/base.rb:532:in `send' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/base.rb:532:in `process_without_filters' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/filters.rb:606:in `process' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/base.rb:391:in `process' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/base.rb:386:in `call' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/routing/route_set.rb:438:in `call' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/dispatcher.rb:87:in `dispatch' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/dispatcher.rb:121:in `_call' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/dispatcher.rb:130:in `build_middleware_stack' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/query_cache.rb:29:in `call' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/query_cache.rb:29:in `call' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb:34:in `cache' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/query_cache.rb:9:in `cache' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/query_cache.rb:28:in `call' 
/tmn_core_cms/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb:361:in `call' 
/tmn_core_cms/vendor/gems/rack-raw-upload-1.0.9/lib/rack/raw_upload.rb:17:in `call' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/string_coercion.rb:25:in `call' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/head.rb:9:in `call' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/methodoverride.rb:24:in `call' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/params_parser.rb:15:in `call' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/session/cookie_store.rb:99:in `call' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/failsafe.rb:26:in `call' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/lock.rb:11:in `call' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/lock.rb:11:in `synchronize' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/lock.rb:11:in `call' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/dispatcher.rb:114:in `call' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/reloader.rb:34:in `run' 
/tmn_core_cms/vendor/rails/actionpack/lib/action_controller/dispatcher.rb:108:in `call' 
/tmn_core_cms/vendor/rails/railties/lib/rails/rack/static.rb:31:in `call' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/urlmap.rb:47:in `call' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/urlmap.rb:41:in `each' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/urlmap.rb:41:in `call' 
/tmn_core_cms/vendor/rails/railties/lib/rails/rack/log_tailer.rb:17:in `call' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/content_length.rb:13:in `call' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/chunked.rb:15:in `call' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/handler/mongrel.rb:67:in `process' 
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:159:in `process_client' 
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:158:in `each' 
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:158:in `process_client' 
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `run' 
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `initialize' 
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `new' 
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:in `run' 
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `initialize' 
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `new' 
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:268:in `run' 
/tmn_core_cms/vendor/gems/rack-1.1.0/lib/rack/handler/mongrel.rb:38:in `run' 
/tmn_core_cms/vendor/rails/railties/lib/commands/server.rb:111 
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
script/server:3 
Request 

Parameters: 

{"article"=>{"asset_attributes"=>{"publish_date(1i)"=>"2011", 
"canonical"=>"", 
"name"=>"Test", 
"content_image_attributes"=>{"image_id"=>"1", 
"id"=>"2"}, 
"publish_date(2i)"=>"9", 
"by_line"=>"", 
"publish_date(3i)"=>"28", 
"guid"=>"", 
"display_authorbiography"=>"1", 
"content_section_attributes"=>{"id"=>"2", 
"primary_section"=>"1"}, 
"publish_date(4i)"=>"06", 
"publish_date(5i)"=>"00", 
"id"=>"2", 
"public_keywords_string"=>"", 
"tagline"=>"", 
"keywords_string"=>"", 
"display_adsense"=>"1", 
"author_id"=>"1", 
"series_id"=>"", 
"partner_id"=>"", 
"short_desc"=>"Test"}, 
"content_text"=>"<p>\r\n\tTest</p>\r\n"}, 
"articlems2side__sx"=>"1", 
"commit"=>"Update", 
"_method"=>"put", 
"authenticity_token"=>"R57YKHe3VD38JbpENgZf4ruSAffkyuVp18LY1qOfE/U=", 
"id"=>"2-test", 
"site"=>{"id"=>""}, 
"secondary_site"=>{"id"=>""}} 
Show session dump 

Response 

Headers: 

{"Content-Type"=>"", 
"Cache-Control"=>"no-cache"} 
+0

什麼是'image_file'你能發佈相關代碼嗎?另外,堆棧跟蹤上方應該有更多行。你可以發佈這些呢? –

回答

1

嘗試用值來替換字符串插值和測試,也許事情錯在那裏。

image_file.resize "250x250" 

如果這樣的作品,那麼你需要看看你的定義style,因爲它可能無法正確定義,或者您也可以通過調用不正確的名稱的方法。

編輯0:

嘗試打開一個控制檯應用程序,並運行一些示例代碼MiniMagick只是這樣,我們就能確保其工作:

image = MiniMagick::Image.open("http://www.google.com/images/logos/logo.png") 
image.resize "5x5" 

如果在您的應用程序控制臺進行再問題除了安裝插件之外還存在。

編輯1:

好吧,以及它的安裝方法,給你帶來麻煩。使用捆綁器,您可以在供應商目錄中安裝依賴關係,從而使您可以在系統上安裝它們的所有行爲。嘗試運行bundle install --path vendor/bundle查看docs here

+0

德文,非常感謝您的幫助。不幸的是,改變字符串並沒有幫助。也許我應該檢查我的模型,看看他們是否已經在其中設置了更多的「魔術」。這似乎是在這裏發生的事情。 – Micharch54

+0

看看編輯0,我只是想確保插件的安裝工作。 –

+0

奇數,它仍然失敗。我會認爲這會起作用。也許我們用來安裝gem的方法(因爲我們不能「gem install」它)導致了這個問題。我一直無法通過谷歌找到任何其他的問題。我的情況必須有一些特別的東西。 – Micharch54

相關問題