可以注释掉`wrap_parameters`初始化程序吗?

时间:2012-12-30 17:52:04

标签: ruby-on-rails ruby-on-rails-3.2 thin foreman rails-api

我在使用Foreman和Thin启动我的Rails-API应用程序时遇到此错误。

AM@~/Documents/RailsWS/app1229 >foreman start
09:47:39 web.1  | started with pid 773
09:47:44 web.1  | => Booting Thin
09:47:44 web.1  | => Rails 3.2.8 application starting in development on   
  http://0.0.0.0:5000
09:47:44 web.1  | => Call with -d to detach
09:47:44 web.1  | => Ctrl-C to shutdown server
09:47:45 web.1  | Exiting
09:47:45 web.1  | 
 /Users/AM/Documents/RailsWS/app1229/config/initializers/wrap_parameters.rb:8:in 
 `block in <top (required)>': undefined method `wrap_parameters' for 
 ActionController::API:Class (NoMethodError)

花了好几个小时试图调试之后,我没有成功,所以最后决定尝试黑客攻击:我在项目的initializers/wrap_parameters.rb文件中注释掉了这一行,如下所示:

ActiveSupport.on_load(:action_controller) do
  #wrap_parameters format: [:json] 
end

这似乎解决了当前的问题,因为瘦服务器启动并运行。但是,我不确定这对应用程序会产生什么影响。在使用Rabl gem服务JSON的Rails-API应用程序中这样做是否安全?

我也引用了Active Resources section of Agile Web Development with Rails (Ed. 4)

1 个答案:

答案 0 :(得分:0)

我取消了rails api项目,现在我将其重写为完整的rails应用程序。