将edit_object_path和new_object_path融合到一个路径中

时间:2013-04-23 15:37:36

标签: ruby-on-rails ruby

为了编辑和创建一个新对象,我想只有一个路径(比如* / admin / edit)。由于new_object_pathedit_object_path呈现相同的_form.html.erb页面,是否可以融合编辑和新内容? 我希望我的问题清楚地表明了......

1 个答案:

答案 0 :(得分:0)

我不确定你为什么要那样做?

阅读REST架构。 newedit行为具有不同的含义。是的,它们使用相同的局部视图(_form),但它们在控制器端具有不同的逻辑。在新操作中,您创建了一个非常新的(在大多数情况下几乎为空)对象,但在渲染编辑操作视图之前,您需要通过给定(在URL中)对象的ID从数据库中获取对象。

我无法理解为什么你需要通过意义(和逻辑)动作融合两种不同的方式?

您应该对newedit操作使用不同的视图,并在其中呈现部分视图(_form)(可能您已经在自动生成的支架中看到过这种视图)。