来自RMagick的LocalJumpError

时间:2011-10-13 00:42:35

标签: ruby-on-rails ruby rmagick

在OSX上,一个Ruby 1.9.2下的Rails 2.3.14应用程序,这个(在一个模型中):

img = Magick::Image::read(File.join(image_path)).first
resized = img.change_geometry("#{new_width}x>")

在第二行发生此错误的炸弹:

LocalJumpError (no block given):
  app/models/client_file.rb:186:in `change_geometry'
  app/models/client_file.rb:186:in `resize_image'
  app/controllers/siteman/files_controller.rb:65:in `resize'
  <internal:prelude>:10:in `synchronize'
  /Users/chuckhoffman/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
  /Users/chuckhoffman/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
  /Users/chuckhoffman/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'

1 个答案:

答案 0 :(得分:1)

the docs看,就像函数需要一个块一样,即使基本调整大小信息是作为函数参数给出的。这对我来说似乎非常不优雅,但是,我从来没有发现RMagick与这样的功能非常符合逻辑/直觉。

无论如何,上面链接中的示例看起来应该足以让您走上更好的轨道。希望有所帮助!