德克萨斯论坛报:TT U streams
tt_streams的Python项目详细描述
提供创建内容流的方法
用法
您可以使用TT-U流从不同的应用程序收集不同的模型 统一的模型流。流由一系列^{tt1}组成$ 您编写的子类,它们特定于所使用的每个应用程序。
直接跳到简单的(近乎幼稚的)实现示例, 签出project/example/models.py文件。
每一个django应用程序要将其模型公开到流中,应该做两件事:
- 创建特定的*Item模型。例如,StoryItemshould子类 StreamItem模型并通过ForeignKey提供到 在本例中选择“story”的模型。
- 创建一种将这些模型与Stream关联的方法。这是最 通常通过StreamItem子类的内联接口完成。
除此之外,您对 StreamItem由您决定。使用StreamItem类作为 缓存表,这样就不必向数据库发送另一个查询。
例如,StoryItem自动存储其相关的标题 Story模型保存时,接收器连接到post_save 用于Story的信号,以确保其所有stream_items都已重新保存 节省了时间。
有几点需要注意:
- 你可以给自己的子类命名StreamItem,只要你愿意
- 您可以随意命名相关字段
- 它自动有一个pub_date,您可以使用它来排序,但是 默认情况下不订购
安装和配置
您可以使用pip:
pip install tt_streams
确保将tt_streams添加到INSTALLED_APPS中。你 你想怎么加就怎么加。这可以作为复制和粘贴解决方案:
INSTALLED_APPS += ["tt_streams", ]
一旦安装,您必须运行syncdb,或者migrate,如果您是 使用South。
贡献
- 创造一些很棒的东西——让代码更好,添加一些功能, 不管怎样(这是最难的部分)。
- Fork it
- 创建主题分支以容纳您的更改
- 在新主题分支中获取所有提交内容
- 提交pull request
许可证
版权所有2013德克萨斯论坛报
根据apache许可证2.0版(以下简称“许可证”)授权; 除非符合许可证,否则您不能使用此文件。 您可以在
http://www.apache.org/licenses/LICENSE-2.0
除非适用法律要求或书面同意,否则软件 根据许可证分发是按“原样”分发的, 无任何明示或默示的保证或条件。 有关管理权限的特定语言和 许可下的限制。