【发布时间】:2021-07-11 18:39:04
【问题描述】:
如果您使用 tag_ids 之类的定义作为 id 数组传入参数,Rails 将处理向对象添加关联的 has_many 项,我说得对吗?
如果是这样,我会将以下内容发布到我的项目控制器:-
{
"title": "Bottle",
"tag_ids": [25, 26]
}
发生的事情是 tag_ids 被忽略了。我已经添加了 id 为 25 的标签,但没有包含 26。
我的控制器:-
# PATCH/PUT /api/items/1
def update
if @item.update(item_params)
render json: @item, include: ['tags']
else
render json: @item.errors
end
end
def item_params
params.require(:item).permit(:name, :tag_ids)
end
项目has_and_belongs_to_many标签,它们有一个jobs_tags的连接表。该关联有效,因为我在上面的回复中返回了标签。但是,我似乎无法添加它们。知道我哪里可能出错了吗?
我是否需要在 Item 模型中显式添加 tag_ids 字段?
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 ruby-on-rails-5