ruby-on-rails - 在 ruby 中添加到 id 的数据库列表中
问题描述
我有这个 id 列表
"recipients"=>"1702356,1702328,1702329,1702357,1702358,1702359,1702331,1702332,1702360,1714240,1702361,1702363,1702364,1702334,1718481,1702336,1714996,1702337,1702365,1714289,1718984,1702338,1702340,1702367,1702341,1702343,1702345,1702368,1702369,1702370,1702346,1702348,1702350,1702352,1702371,1714998,1702372,1702354,1718763"
此列表未修复,我选择我收到的学生作为 id 的参数列表。我想在数据库中添加每个 id,如下所示:
@recipient = params[:recipients]
@recipient.each do |k|
@recipient = Recipient.create(:e_id => @id, :r_id =>k, :td_id =>@f, :student_id =>k, :s_id =>@current_user.s_id )
logger.info "recipient added ... 123456789"
end
不工作只添加了 1 个 id 并在日志 1 中打印"recipient added ... 123456789"
我的代码有什么问题?
解决方案
看起来您的recipient
列表是一个字符串,您需要先将其拆分为各个 id:
@recipients = params[:recipients].split(',').map do |student_id|
Recipient.create(
e_id: @id,
r_id: k,
td_id: @f,
student_id: student_id,
s_id: @current_user.s_id
)
logger.info "recipient added ... #{student_id}"
end
推荐阅读
- javascript - 如何在 JavaScript 中延迟某些内容
- inappbrowser - inappbrowser 替换来自 Oauth 2.0 的 URI 方案
- python - Tensorflow 2 中 ScipyOptimizerInterface 的替代品是什么?
- c# - C# 事件等待句柄
- python - 用每个变量 Python 的平均值替换缺失值
- php - 使用消息将用户从页面重定向到另一个页面
- javascript - Python Selenium 中的 Firefox:driver.execute_script 尝试使用 JQuery 删除文本字符给出“SecurityError:操作不安全”
- android - 使用 ADB 运行 android 测试时如何获取日志
- flutter - 用于移动应用程序的调度工具(如 calendly)(颤振)
- command-line - 在命令提示符下的 taskkill 命令中生成 2 个输出的相同代码