【问题标题】:Ruby on Rails' respond_to causing strange errorRuby on Rails 的 respond_to 导致奇怪的错误
【发布时间】:2011-04-13 10:36:03
【问题描述】:

通常情况下还有另一个respond_to,传入param[:top]时的特殊情况,所以代码前面还有另一个respond_to

      respond_to do |format|
        format.html { render :top_page_analytics }
        format.json { render :json => @analytics }
        format.xml { render :xml => @analytics }
        return
      end

但上面的代码实际上给出了一个奇怪的错误,因为缺少 json 模板,并进一步调试导致:

      respond_to do |format|
        format.html { render :top_page_analytics }
        format.json { render :json => @analytics }
        format.xml { render :xml => @analytics }
      end
      return

修复了这个错误。需要返回,这样就不会出现“双重渲染错误”,因为程序将流向另一个respond_to。但是我想知道respond_to的奇怪语法,看起来有点像case语句,可能会导致顶部这样的错误?

【问题讨论】:

    标签: ruby-on-rails mime-types respond-to


    【解决方案1】:

    返回不能去那里,因为你正在通过一个街区。该块不会在控制器操作的直接上下文中执行。当您从块返回时,您实际上是从函数 yield (respond_to) 返回,而不是控制器操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-01
      • 2015-07-25
      • 2016-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多