Глобальные переменные в моделях не работают. Тут подробное описание проблемы и даже решения. http://clearcove.ca/blog/2008/08/recipe-make-request-environment-available-to...
Однако, решение не является threadsafe. И именно это мешает использовать подход даже на стандартном интерпретаторе ruby 1.9.2p0 - отваливается как минимум через раз.
Просмотрел десяток топиков на stackoverflow.com - большая часть заточена под плагины авторизации вроде device. У меня же стандартная restful auth и менять её нежелательно.
belongs_to :user
scope :by_own, lambda { where(:user_id => @user_id, :status => "ok") }
validates_uniqueness_of :email, :scope => by_own, :message => "Message to this email already delivered"
Как видно, мне нужно знать @user_id.