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

时间:2012-07-15 10:48:46

标签: python pyramid

我是网络开发的新手,我正在设法完成金字塔中的网站,但我希望有一些消息服务,不知道从哪里开始。

我想要像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;

1 个答案:

答案 0 :(得分:2)

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

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

  • 如果你还不知道,你应该看一下sqlalchemy。它是处理数据库的一个很好的工具,它通常用于金字塔。
  • 您应该使用用户表中的from_userto_user的密钥,而不是存储名称,以避免浪费空间。
  • 如果您的应用程序应该处理多个请求,您应该考虑对某些列进行索引,具体取决于您执行的查询。如果您经常查询来自某个用户的所有邮件,请在from_user上编制索引。如果您查询来自某个用户的所有未读邮件,请使用from_usermessage_readhow to do it in sqlalchemy)上的复合索引。这应该会大大加快你的要求。