0

乱数に問題があります。Account テーブルがあり、それぞれにランダムなアカウントを割り当てる必要がありますが、すべてのデータを保存すると、すべてのレコードに同じ乱数 (1) があることに気付きます。

私は2つのアカウントしか持っていません。私は 10.times do... でテストしましたが、うまくいくようですが、なぜこれがうまくいかないのか分かりません。何かアイデアはありますか?

  data = []
  accounts = Account.all
  searches.each do 
      data << SearchesResult.new({
          :account_id => accounts[rand(accounts.count)]
      })
  end
  SearchesResult.import data
4

1 に答える 1

1

Accountオブジェクトを取得し、それを:account_idとして渡しているようです。あなたはおそらくしたい

  data << SearchesResult.new({
      :account_id => accounts[rand(accounts.count)].id
  })

または、mckeedが言うように、

  data << SearchesResult.new({
      :account => accounts[rand(accounts.count)]
  })
于 2012-06-12T19:18:12.967 に答える