的Rails:PARAMS在format.html {渲染...}
我试图通过PARAMS在控制器方法的format.html这样的:的Rails:PARAMS在format.html {渲染...}
def create     @doc = Doc.new(params[:doc]) 
    respond_to do |format| 
    if @doc.save 
     format.html { redirect_to share_url(@doc.user.ftp, @doc) } 
    else 
     format.html { render "new", :locals => { :template => @doc.template_id } } 
    end 
    end 
end 
我得到它告诉我,我是一个没有方法错误M在局部变量发出正确的参数:template:
local_assigns {:template=>4} 有我丢失的东西要得到那个工作?它应该重定向到doc#new动作,但它会转到doc#index。有任何想法吗?
回答:
使用控制器内的语法如下:
render "new", :locals => { :template => @doc.template_id } 意味着你渲染new.html.erb模板,而不是局部的。您无法将局部变量传递给非局部视图。你应该做的是打电话render "new",在你需要的时候参照@doc。
以上是 的Rails:PARAMS在format.html {渲染...} 的全部内容, 来源链接: utcz.com/qa/261340.html
