在 Ruby 1.9.3p194 中的 Rails 3.2.8 中,当通过respond_to
调用 gem 中包含的模块中的方法将数组传递到 ActiveSupport::Concern 的包含块中时,该块会按需包含在类定义中,acts_as_...
导致:
respond_to causes undefined method `to_sym' for [:json, :html]:Array
在下一个请求中,我得到:
RuntimeError (In order to use respond_with, first you need to declare the formats your controller responds to in the class level):
actionpack (3.2.8) lib/action_controller/metal/mime_responds.rb:234:in `respond_with'
在模块代码中,它只是做相当于:
formats = [:json, :html]
respond_to formats
格式在其他地方配置,因此它可以应用于所有指定acts_as_...
.
我知道当我在类定义中这样做时它会起作用:
respond_to :json, :html
那么,如何使用格式数组的变量调用 respond_to?