Мне интересно, есть ли более прямой способ получить и записать IP-адрес пользователя в самой модели. Я делал это с контроллера, но заметил, что при использовании гема rakismet упоминается, что он делает все внутри модели, но не по IP-адресу.
http://github.com/joshfrench/rakismet
В настоящее время я делаю это, как раз перед сохранением с контроллера. Работает нормально.
@notification = Notification.new(params[:notification].merge(:user_ip => request.remote_ip, :user_agent => request.user_agent, :referrer => request.referrer))