【发布时间】:2018-04-26 11:55:01
【问题描述】:
目前我有一个与 Rails 5 API 通信的 ReactJS 应用程序。
作为其中的一部分,React 应用程序向api/v1/job 发出单个 JSON POST 请求以创建新的作业记录。此请求包括与工具和技术的两个 HABTM 关系的信息。
Job - has_and_belongs_to_many :technologies
Job - has_and_belongs_to_many :tools
如何使用与作业、技术和工具相关的 ID 更新 rails 控制器中的适当连接表?
请求如下所示,其中数字是 ID:
{
"job" : {
...
"technologies" : [ "1", "6", "9" ],
"tools" : [ "3", "5" ],
...
}
}
值得一提的是,请求是作为带有 JSON 数据的 axios POST 请求发送的,因此没有传统的表单字段。
我也可以像@technologies = params[job][technologies] 那样在我的控制器中成功访问参数,我只是不确定下一步要创建记录:)
【问题讨论】:
-
我认为这应该可行:
job << Technology.where(id: params['job']['technologies']),考虑到您已经有一个job对象,这将在连接表中创建记录。
标签: ruby-on-rails reactjs api post has-and-belongs-to-many