2011-08-02 25 views
5

我想创建一个类似于Facebook或StackExchange的通知栏。Ruby on Rails中的通知栏

我希望它显示带有数字的通知和带有一些信息的下拉面板。

enter image description here enter image description here

有人可以提供一个例子或如何建立在Ruby on Rails的或Javascript/jQuery的教程?

感谢

回答

6

它可能做一个两个阶段的过程:

  • 获得优秀/未读通知的计数器。在标题中显示为链接。
  • 添加一个jQuery处理程序,它将通过AJAX加载消息,无论是点击还是悬停,具体取决于首选项。

第一部分是简单的,你只需要调用一个方法,你的协会,如果你有一个范围确定:

<%= link_to(@user.notifications.unread.count, user_notifications_path(@user), :class => 'notifications') %> 

下一部分涉及拼凑与jQuery的东西,也许是这样的:

$('.notifications').click(function() { 
    $('#notifications').load(this.href); 
    return false; 
}); 

你需要有一个特定的视图,将渲染到该#notification块。

+0

那个视图会先调用控制器?并显示结果? – Immo

+0

你正在连接到一个控制器和操作对,它会呈现实际的通知,是的。您甚至可以通过单击链接并检查是否显示正确的HTML来在没有AJAX的情况下进行测试。 – tadman

+1

你知道我是否可以在某处找到完整的教程? – Immo