0

Rails新手在这里,我有两个模型相关

  class User < ActiveRecord::Base
    has_many :images

  class Image < ActiveRecord::Base
    belongs_to :user

我知道你可以获取用户图像,我也可以使用我的 current_user 方法返回我当前用户的信息

@user.images or current_user.images

如果我希望它像使用普通 sql 一样在一行中返回图像数据和用户数据怎么办?

SELECT u.* FROM users u
JOIN images i
ON i.user_id = u.id etc..

最好和最有效的方法是什么?

4

1 回答 1

2

查询 -

SELECT u.* FROM users u
JOIN images i
ON i.user_id = u.id etc..

相当于 -

@user.joins(:images)

更新:

仅获取某些字段-

@comments = @user.joins(:images).select("images.path, images.path_thumb, users.username")
于 2013-03-14T12:58:46.750 回答