Rails: Use URL Helper in Observer

У меня есть наблюдатель, который выглядит следующим образом:

class CommentObserver < ActiveRecord::Observer
    include ActionView::Helpers::UrlHelper

    def after_create(comment)
        message = "#{link_to comment.user.full_name, user_path(comment.user)} commented on #{link_to 'your photo',photo_path(comment.photo)} of #{comment.photo.location(:min)}"
        Notification.create(:user=>comment.photo.user,:message=>message)
    end

end

По сути, все, что я использую, это создание простого уведомления для определенного пользователь, когда кто-то публикует комментарий к одной из его фотографий.

Это не срабатывает с сообщением об ошибке:

NoMethodError (undefined method `link_to' for #<CommentObserver:0x00000102fe9810>):

Я ожидал, что включение ActionView :: Helpers :: UrlHelper решит эту проблему, но похоже чтобы не иметь никакого эффекта.

Итак, как я могу включить помощник URL в свой наблюдатель или отрендерить это каким-то другим способом? Я бы с радостью переместил "представление сообщения" в частичное или что-то в этом роде, но у наблюдателя нет ассоциированного просмотров, чтобы переместить это в ...

5
задан Andrew 20 June 2011 в 21:46
поделиться