Я пытаюсь реализовать простой поток действий.
Given that User abc creates a post 123
And User xyz comments on 123.
Then user abc's activity stream should look something like:
<ul>
<li>User <a href="/users/abc">abc</a> created a post <a href="/users/abc/posts/123">123</a></li>
<li>User <a href="/users/xyz">xyz</a> commented on post <a href="/users/abc/posts/123">123</a></li>
</ul>
Я предпочитаю заполнять модель деятельности (а не несколько запросов в контроллере). Я добавил хук after_create к моделям постов и комментариев, чтобы заполнить действие:
class Post < ActiveRecord
after_create do
ActivityCreate(:user_id => self.user_id, :description => "created a post")
end
end
Я думал о хранении специальных полей, которые мне понадобятся для создания маршрутов и ссылок, таких как post_id и т. Д., Но у меня может быть больше действий, которые я хочу отслеживать позже, лайки, антипатии, избранное и т. Д., И я хочу гибкие способ создания описаний деятельности.
Итак, мой вопрос: как эффективнее поместить link_to в описание деятельности? Есть ли какой-нибудь способ печати printf в стиле c для последующего анализа?
вроде как:
description = ["Пользователь? Прокомментировал сообщение?", User_path (User.find (self.user_id)), post_path (Post.find (self.id))]]
А потом оцените это на стороне шаблона?