Судя по вашим комментариям в ответ на Марио, вы на самом деле не хотите создавать нового пользователя - это создаст новую запись.
Я рекомендую взглянуть на sentient_user gem . После того, как вы правильно подключили его в моделях и контроллерах, ваша модель сообщений может стать:
class Post < ActiveRecord::Base
belongs_to :user
validates :user, :presence => true
before_validate do
self.user ||= User.current_user
end
end
Я изменил хук на before_validate
и добавил проверку, чтобы убедиться, что есть связанный пользователь, поскольку в большинстве случаев не имеет смысла разрешать создание сообщения без идентификатора пользователя.
(о, и я уверен, что есть другие решения для получения User.current_user или аналогичного, sentient_user - это то, что я лично использую.)