gpt4 book ai didi

ruby-on-rails - ruby 中的每个循环都不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 17:05:53 25 4
gpt4 key购买 nike

我有一个用 Ruby 编写的非常简单的 each 循环:

params[:category].each do |i|
cat = Category.find(i)
string << cat.name
end

奇怪的是这个循环只运行一次!

params[:category] 应该是所有参数都在类别标签下的数组,对吧?

这是使用 Controller 中的选择标签生成的:

<%=select_tag "category", options_from_collection_for_select(@category,"id" , "name"),:multiple => true, :class=>"bbFormSelect",:id=>"select_category", :name => "category" %>

如果您发现问题,请告诉我!

最佳答案

您始终可以像这样通过手动记录来检查变量的内容:

logger.info(params[:category])

这将适用于所有 Controller 。

但我会建议您以不同的方式进行。使用您的方法, Controller 将为提供的每个类别调用一次数据库。像这样将它发送到 find 方法就足够了:

@categories = Category.find(params[:category])
names = @categories.map(&:name).join

如果 find 方法获取一个 id 数组而不是一个 id,它将返回一个类别数组。

关于ruby-on-rails - ruby 中的每个循环都不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5589483/

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