Rails:从另一个控制器渲染一个.js.erb?

如何从不属于将要呈现的视图的控制器渲染.js.erb

例如:如何在post_controller在我的页面视图中渲染create.js.erb

post_controller.rb

 def create @post = Post.new(post_params) respond_to do |format| if @post.save format.html { redirect_to @post, notice: 'Post was successfully created.' } format.json { render action: 'show', status: :created, location: @post } format.js #{I think I need something in here?} else format.html { render action: 'new' } format.json { render json: @post.errors, status: :unprocessable_entity } end end end 

似乎有几种方法可以实现这一目标:

 respond_to do |format| format.js { :location => path_to_controller_method_url(argument) } end 

你如何使用Ruby on Rails响应控制器中的另一个js文件?

 respond_to do |format| format.js { :template => "classrooms/create_differently.js.erb", :layout => false } end 

在轨道上的ruby中渲染备用视图

 respond_to do |format| format.js { render :file => "/path/to/save.js.erb" } end