Rails 3 - Redirect_to / Render另一个控制器

时间:2011-08-23 20:25:33

标签: ruby-on-rails controller ruby-on-rails-3.1

我有2个控制器:ProjectsUsers。两种模型都没有任何关系。

当我创建新的Project时,我希望在保存新的new User path后重定向到project,但我的所有尝试都会给错误模板或类似的东西提供错误。

我怎样才能使这个工作?

EDITED

我在Projects控制器中的创建方法:

def create

@project = Project.new(params [:project])

respond_to do |format|
  if @project.save     
    format.html { render (new_user_registration_path) }

  else
    format.html { render :action => "new" }
    format.xml  { render :xml => @project.errors, :status => :unprocessable_entity }
  end
end

2 个答案:

答案 0 :(得分:3)

你不想渲染new_user_registration_path,你想redirect_to new_user_registration_path

答案 1 :(得分:0)

你必须使用redirect_to代替渲染:

 redirect_to new_user_registration_path

 respond_to do |format|
   if @project.save     
     format.html { redirect_to new_user_registration_path }
   else
     format.html { render :action => "new" }
     format.xml  { render :xml => @project.errors, :status => :unprocessable_entity }
   end
 end