我如何在金字塔内设置消息/通知服务?

问题描述 投票:4回答:2

我是Web开发的新手,正在设法完成一个金字塔式的网站,但我想提供某种消息服务,并且不确定从哪里开始。

我想要Quora或stackoverflow之类的工具,这些工具会将站点的警报发送给用户(也许它们可以互相发送消息)。我需要做些什么?是否有一个库或教程可以帮助我理解所涉及的全部内容,还是仅创建消息的数据模型并为此查询数据库?我想要一种允许用户跟踪其他用户的活动并彼此通信的方法,并且我不想重新创建电子邮件。

是否有合适的简便方法可以与金字塔配合使用?

更新:我发现了一些资源,我想我知道了。最好了解是否有更普遍接受的方法,但是我认为我可以创建此结构并每隔x秒查询一次新消息:

CREATE TABLE `messages` (
`message_id` int(11) NOT NULL auto_increment,
`from_user` varchar(65) character set latin1 collate latin1_general_ci NOT NULL,
`to_user` varchar(65) character set latin1 collate latin1_general_ci NOT NULL,
`message_title` varchar(65) NOT NULL,
`message_contents` longtext NOT NULL,
`message_read` int(11) NOT NULL default '0',
PRIMARY KEY (`message_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=21;
python pyramid
2个回答
2
投票

您有了基本的想法:您只需要一个表来存储消息。只要您不处理广播消息,一个表就足够了。

关于您提出的结构的一些评论:

  • 如果您尚不了解,则应查看sqlalchemy。这是处理数据库的好工具,通常与金字塔一起使用。
  • 您应该使用用户表中的from_userto_user键,而不要存储名称,以避免浪费空间。
  • 如果您的应用程序应该处理多个请求,则应根据所执行的查询考虑对某些列建立索引。如果您经常查询某个用户的所有消息,请在from_user上建立索引。如果查询某个用户的所有未读邮件,请在from_usermessage_readhow to do it in sqlalchemy)上使用复合索引。那应该大大加快您的请求。

0
投票

使用松弛(简便快捷的解决方案)https://tracklify.com/blog/simple-way-to-notify-from-python-app

© www.soinside.com 2019 - 2024. All rights reserved.