#!ruby class Car < ActiveRecord::Base belongs_to :user end @cars = Car.where(:user_id => current_user.id).limit(10)
Я хочу создать область, как я могу использовать ассоциацию: пользователь в области?
(rails3)
Итак, в вашей модели:
scope :foo, lambda {|u| where( :user_id => u ).limit(10) }
... которую вы можете затем вызвать с вашего контроллера с помощью:
Car.foo(current_user)
Попробуйте:
Car.join(:user).where(:user_id => current_user.id).limit(10)
Обновление:
в вашей модели
def self.with_user(user) join(:user).where(:user_id => user.id) end
в вашем контроллере
Car.with_user(current_user).limit(10)