gpt4 book ai didi

ruby-on-rails - HABTM 与 id 的文本/隐藏字段的关系

转载 作者:行者123 更新时间:2023-12-04 06:28:16 27 4
gpt4 key购买 nike

我正在与 Rails 创建 has_and_belongs_to_many 关系。每个组有很多参与者,每个参与者可以是多个组的一部分。

关系似乎设置正常,因为我可以使用复选框在我的表单中添加关系:

<%= collection_check_boxes(:group, :participant_ids, @participants, :id, :name) %>

但是,我需要使用一个隐藏字段来提交这些关系(我使用 AJAX 在 View 中获取它们)和一个 ID 数组(例如 [1, 3])。我试过使用这样的文本字段,但它不保存数据:

<%= f.text_field :participant_ids %>

participant_ids 使用复选框保存并且我将它输出到显示 View 时,它是一个 id 数组,但我似乎无法以该格式开始提交它。

为什么我不能使用文本/隐藏字段提交 participant_ids,有什么解决办法吗?


作为引用,我设置了连接表,模型如下所示:

class Group < ActiveRecord::Base
has_and_belongs_to_many :participants
end

class Participant < ActiveRecord::Base
has_and_belongs_to_many :groups
end

我还修改了组 Controller 以使用像这样的强参数:

def group_params
params.require(:group).permit(:user_id, :purpose, :participant_ids => [])
end

如有必要,我可以发布更多代码。

最佳答案

This answer为我工作。你将不得不

<% @participants.each do |participant| %>
<% f.hidden_field 'participant_ids][', :value => participant.id %>
<% end %>

关于ruby-on-rails - HABTM 与 id 的文本/隐藏字段的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26468988/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com