ActiveRecordでカラムに名前を付ける方法について知りたいです。
Author model
id | author_name | created_at |
---|---|---|
1 | 太宰治 | 2018/05/01 12:34:56 |
Book model
|id|author_id|book_name|created_at|
|:--|:--:|--:|
|1|1|蜘蛛|2018/06/01 12:34:56|
|2|1|羅生門|2018/07/01 12:34:56|
例えばこのようにAuthorとBookというテーブルがあり内部結合させてauhor_nameとcreated_atを取得するとします
Author.joins(:book).select("author_name, created_at")
そうするとAuthorとBookの双方にcreated_atというカラムがある為
ambiguous column nameとどのカラムを指してるか判断が付かないというエラーが発生すると思います。
SQLですと
Select t1.auhor_name, t2.created_at from authors as t1 inner join books as t2;
のように名前を付けて判別できると思いますがActiveRecordですとどのように対処すればよいのでしょうか?
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。