加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Form_for,型号名称与控制器不同

发布时间:2020-12-17 04:06:06 所属栏目:百科 来源:网络整理
导读:我有一个名为Person的模型,我想拥有一个名为Employee的资源.我发现这将停止form_for魔术. 我需要传递@person对象本身,因此form_for可以选择正确的操作路径(创建或更新). 但是这意味着form_for在输出中使用POST people_path和PUT person_path,而不是employee_
我有一个名为Person的模型,我想拥有一个名为Employee的资源.我发现这将停止form_for魔术.

我需要传递@person对象本身,因此form_for可以选择正确的操作路径(创建或更新).

但是这意味着form_for在输出中使用POST people_path和PUT person_path,而不是employee_paths.

当我的模型和控制器有不同的名称时,是否可以拥有所有Rails约定的好东西?

解决方法

如果要在routes / url中使用“employees”,可以在路由中使用“path”
例如.
创建控制器作为people_controller但在路由中

resources :people,path: "employees"

所以路线就像

new_person GET    /employees/new
people GET    /employees

等等

所以下面的工作

<%= form_for @people do |f| %>
  ...
<% end %>

注意:为此,您必须使用Person模型

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读