teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

修正

2021/06/13 14:01

投稿

winterboum
winterboum

スコア23654

answer CHANGED
@@ -8,4 +8,4 @@
8
8
  `plans_by_where.find_by(user_id: account_user.id)`
9
9
 
10
10
  select で行うと 中身が一つの配列が帰ってくるので 更に first とかが必要です。
11
- find_by でなく whereでやった場合も配列(のようなもの、リレーション)が帰ってくるので firstが必要です。
11
+ 後者も find_by でなく whereでやれますが、その場合も配列(のようなもの、リレーション)が帰ってくるので firstが必要です。

1

修正

2021/06/13 14:01

投稿

winterboum
winterboum

スコア23654

answer CHANGED
@@ -1,6 +1,6 @@
1
1
  いや、、、
2
2
  find は id の配列を与えることも出来ます。
3
- ただ、`plans_by_find = Plan.find(ids)` と `plans_by_where(id: ids)` では結果がやや異なります。
3
+ ただ、`plans_by_find = Plan.find(ids)` と `plans_by_where=Plan.where(id: ids)` では結果がやや異なります。
4
4
  plans_by_find は インスタンスの配列ですが、plans_by_where は リレーションです。
5
5
 
6
6
  ので、user_id: account_user.id なものを抜き取る方法が異なります。