0

私は、独自のルーティング機能を備えたクライアント側フレームワークを使用する Rails アプリに取り組んでいます。pushState ルーティングを使用したいので、Rails ルーターをそのようなリクエストに応答するように構成する必要があります (簡単です)。

ビューフォルダーを空のaction.html.erbファイルでいっぱいにすることなく、レイアウトだけで応答する有効なルートを持つすべての HTML リクエストを設定する簡単な方法はありますか?

4

2 に答える 2

2

有効なルートへのリクエストをインターセプトし、すべての非 ajax リクエストに対してビューをレンダリングする方法を次に示します。

アプリ/コントローラー/application_controller.rb:

class ApplicationController < ActionController::Base
  protect_from_forgery
  before_filter :render_default_view

  # ...

  private

  def render_default_view
    return if request.xhr?
    respond_to do |format|
      format.html { render 'public/default_view.html', :layout => nil }
    end
  end
end

これはあなたが望むことだと思いますよね?

于 2012-07-21T17:31:18.707 に答える
1
def my_action
 respond_to do |format|
   format.html { render 'my_unified_view' }
 end
于 2012-07-21T14:09:46.597 に答える