为了编辑和创建一个新对象,我想只有一个路径(比如* / admin / edit)。由于new_object_path
和edit_object_path
呈现相同的_form.html.erb页面,是否可以融合编辑和新内容?
我希望我的问题清楚地表明了......
答案 0 :(得分:0)
我不确定你为什么要那样做?
阅读REST架构。 new
和edit
行为具有不同的含义。是的,它们使用相同的局部视图(_form),但它们在控制器端具有不同的逻辑。在新操作中,您创建了一个非常新的(在大多数情况下几乎为空)对象,但在渲染编辑操作视图之前,您需要通过给定(在URL中)对象的ID从数据库中获取对象。
我无法理解为什么你需要通过意义(和逻辑)动作融合两种不同的方式?
您应该对new
和edit
操作使用不同的视图,并在其中呈现部分视图(_form)(可能您已经在自动生成的支架中看到过这种视图)。