2012-07-19 69 views
1

行动我为用户提供多态嵌套资源现在渲染:多态嵌套资源

companies/:id/users/new 
departments/:id/users/new 

,如果创建操作成功,我可以重定向到正确的路径(我重定向到新的),但如果失败了怎么我是否再次渲染同一页面,因为我需要显示错误并按原样填充值。 “渲染动作:新的”默认为企业/:ID /用户/新

if @user.save 
    redirect_to send("new_#{@parent.class.to_s.underscore}_user_path", @parent 
else 
    render action: new 

回答

0

没关系,如果它可以帮助别人,原来在我使用@company嵌套表单,@user而不是@parent,@user。它应该是

form_for [@parent, @user] do |f| 

现在它工作正常。感谢所有的答案。

0

,可以尝试通过值使路线

redirect_to [:new, @parent, :user]

+0

这是一个重定向,而不是渲染。当验证失败时,您不想执行重定向,导致您失去用户输入。 – Mischa 2012-07-19 14:03:28