mini_magick неверное количество аргументов (0 для 1) на .resize - PullRequest
0 голосов
/ 23 ноября 2011

Я не уверен, что здесь происходит.

При использовании MiniMagick 3.3 все работало нормально, пока я не попытался изменить размер.

Эта строка приводит к тому, что я получаю неправильное числоАргументы error:

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} / public / images / i / Standard / # {baseimage.id} / original/# enjbaseimage.image_file_namecasts")

Файл image_file возвращал правильный объект (я проверял все, когда добавлял каждый шаг, все работало, пока я не изменил размер)

Верхний разделговорит ArgumentError в ArticlesController # update

Вот полный след:

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"}

1 Ответ

1 голос
/ 23 ноября 2011

Попробуйте заменить строковую интерполяцию значением и проверьте, что, возможно, там что-то идет не так.

image_file.resize "250x250"

Если это сработает, вам нужно взглянуть на определение для style, поскольку оно может не сработать.быть правильно определенным или вы можете вызывать метод с неправильным именем.

Редактировать 0:

Попробуйте открыть консоль для своего приложения и запустить пример кода для MiniMagick, чтобы мы могли убедиться,он работает:

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

Если это работает в консоли приложений, то проблема существует где-то, кроме установки плагина.

Редактировать 1:

Хорошо, так что егометод установки, который доставляет вам неприятности.Используя bundler, вы можете установить зависимости внутри каталога vendor, что даст вам возможность установить их в системе.Попробуйте запустить bundle install --path vendor/bundle См. документы здесь .

...