首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >powerdns-on-rails ArgumentError

powerdns-on-rails ArgumentError
EN

Stack Overflow用户
提问于 2009-11-14 10:04:39
回答 2查看 830关注 0票数 0

我的环境:

代码语言:javascript
复制
CentOS 5
ruby 1.8.6 (2008-08-11 patchlevel 287) [x86_64-linux]
Ruby Enterprise Edition 20090610
passneger or webrick

我使用这个宝石列表。

代码语言:javascript
复制
*** LOCAL GEMS ***
actionmailer (2.3.2, 2.2.2)
actionpack (2.3.2, 2.2.2)
activerecord (2.3.2, 2.2.2)
activeresource (2.3.2, 2.2.2)
activesupport (2.3.2, 2.2.2)
fastthread (1.0.7)
haml (2.2.13)
mysql (2.7)
passenger (2.2.2)
rack (1.0.0)
rails (2.3.2, 2.2.2)
rake (0.8.7)
rmagick (2.9.2)
sqlite3-ruby (1.2.4)
will_paginate (2.2.2)

这是错误消息。我不知道我该怎么解决它。请帮帮我。

当我使用webrick时:

代码语言:javascript
复制
Processing DashboardController#index (for 114.204.152.246 at 2009-11-14 10:52:57) [GET]

ArgumentError (Cannot yield from a Proc type filter. The Proc must take two arguments and execute #call on the second argument.):
  haml (2.2.5) [v] rails/./lib/sass/plugin/rails.rb:19:in `process'
  /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
  /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
  /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
  /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/1.8/webrick/server.rb:162:in `start'
  /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
  /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/1.8/webrick/server.rb:95:in `start'
  /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/1.8/webrick/server.rb:92:in `each'
  /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/1.8/webrick/server.rb:92:in `start'
  /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/1.8/webrick/server.rb:23:in `start'
  /opt/ruby-enterprise-1.8.6-20090610/lib/ruby/1.8/webrick/server.rb:82:in `start'

Rendering /var/rails/powerdns-on-rails/public/500.html (500 Internal Server Error)

当我使用passenger时:

代码语言:javascript
复制
Processing DashboardController#index (for 114.204.152.246 at 2009-11-14 10:22:50) [GET]

ArgumentError (Cannot yield from a Proc type filter. The Proc must take two arguments and execute #call on the second argument.):
  haml (2.2.5) [v] rails/./lib/sass/plugin/rails.rb:19:in `process'
  passenger (2.2.2) lib/phusion_passenger/rack/request_handler.rb:81:in `process_request'
  passenger (2.2.2) lib/phusion_passenger/abstract_request_handler.rb:203:in `main_loop'
  passenger (2.2.2) lib/phusion_passenger/railz/application_spawner.rb:340:in `start_request_handler'
  passenger (2.2.2) lib/phusion_passenger/railz/application_spawner.rb:298:in `handle_spawn_application'
  passenger (2.2.2) lib/phusion_passenger/utils.rb:181:in `safe_fork'
  passenger (2.2.2) lib/phusion_passenger/railz/application_spawner.rb:296:in `handle_spawn_application'
  passenger (2.2.2) lib/phusion_passenger/abstract_server.rb:337:in `__send__'
  passenger (2.2.2) lib/phusion_passenger/abstract_server.rb:337:in `main_loop'
  passenger (2.2.2) lib/phusion_passenger/abstract_server.rb:187:in `start_synchronously'
  passenger (2.2.2) lib/phusion_passenger/abstract_server.rb:154:in `start'
  passenger (2.2.2) lib/phusion_passenger/railz/application_spawner.rb:192:in `start'
  passenger (2.2.2) lib/phusion_passenger/spawn_manager.rb:257:in `spawn_rails_application'
  passenger (2.2.2) lib/phusion_passenger/abstract_server_collection.rb:126:in `lookup_or_add'
  passenger (2.2.2) lib/phusion_passenger/spawn_manager.rb:251:in `spawn_rails_application'
  passenger (2.2.2) lib/phusion_passenger/abstract_server_collection.rb:80:in `synchronize'
  passenger (2.2.2) lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
  passenger (2.2.2) lib/phusion_passenger/spawn_manager.rb:250:in `spawn_rails_application'
  passenger (2.2.2) lib/phusion_passenger/spawn_manager.rb:153:in `spawn_application'
  passenger (2.2.2) lib/phusion_passenger/spawn_manager.rb:282:in `handle_spawn_application'
  passenger (2.2.2) lib/phusion_passenger/abstract_server.rb:337:in `__send__'
  passenger (2.2.2) lib/phusion_passenger/abstract_server.rb:337:in `main_loop'
  passenger (2.2.2) lib/phusion_passenger/abstract_server.rb:187:in `start_synchronously'

Rendering /var/rails/powerdns-on-rails/public/500.html (500 Internal Server Error)
EN

回答 2

Stack Overflow用户

发布于 2010-10-19 21:49:21

我也有同样的问题,但是我的ruby已经是1.8.7了。好的,看看这篇文章http://citizen428.net/archives/846,我的解决方案是

代码语言:javascript
复制
after_save :callback

define_method :callback do
    # do something
end

更改为

代码语言:javascript
复制
after_save :callback

def callback do
    # do something
end
票数 1
EN

Stack Overflow用户

发布于 2010-05-27 05:07:21

我也被困在这个问题上,虽然我不能给你一个问题的解释,但我可以告诉你,升级到REE 1.8.7为我解决了这个问题。我猜这是rails补丁暴露出来的ruby 1.8.6的一些问题,但这只是一个猜测。

顺便说一句,如果您想看到rails提交引入了"Can‘t you from a Proc“错误,那么可以去看看http://dev.rubyonrails.org/changeset/5163

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1732976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档