やあ、私はレールに戻ってきたばかりで、いくつかの関連付けで作業するために必要なものをたくさん忘れてしまいました。
問題:
Customer
fielsid
とfieldの 2 つのテーブルがuser_id
あります。aがaであるようなの配列を取得したい。SQL でこれを行う方法は知っていますが、Ariel でこれを行う方法を忘れていました。User
id
Users
Customer
user_id
id
User
編集
ですから、もう少し説明が必要だと思います。既存のプロジェクトを引き継いでいます。ユーザーと顧客の間には 1 対 1 の関係がありますが、一部のユーザーのみが関連する顧客エンティティを持っているため、ほとんどの場合、呼び出しuser.customer
が返されます。nil
現在すべてのユーザーをリストしているページを編集する必要がありますが、顧客レコードを持つユーザーのみをリストする必要があります。
関係は前の開発者によってすでに作成されています。
class Customer
belongs_to :user, :class_name => "Refinery::User"
end
Refinery::User.class_eval do
has_one :customer
end
コントローラーに次のコードがあります。
def index
# i need to return an array of users, such that the only
# users in this array are the ones with a non-nil customer.
@users = Refinery::User.paginate(:page => params[:page])
end
どんな助けでも素晴らしいでしょう、ありがとう!