在rails3应用程序(3.0.5)中,我声明了以下mime-type(在config / initializers / mime_types.rb中):
Mime::Type.register_alias "text/html", :print
在orders_controller.rb中,我有以下行动:
respond_to :html
def show
@order = Order.find(params[:id])
respond_with @order do |format|
format.print
end
end
然后我目前有2个相同的视图对应于html和打印格式:
show.html.haml:
= @order.name
show.print.haml:
= @order.name
所有内容都按预期使用'html'路径,即/ orders / 2呈现显示id == 2的订单名称,但如果我尝试/orders/2.print,我会得到
undefined method 'user' for nil:NilClass
好像@order实例变量没有传递给'print'视图。我错过了什么?有任何想法吗?它应该是微不足道的,但是几个小时后我就一直坚持这个!
答案 0 :(得分:0)
好的,对不起,我有一个在自定义mime类型上打嗝的before_filter方法。现在一切正常(我还在学习彻底在发生错误的情况下阅读日志)。