跳转到主要内容

德克萨斯论坛:tt_streams

项目描述

提供创建内容流的方法

用法

您可以使用tt_streams将来自不同应用的不同模型收集到一个统一的模型流中。流由一系列您为每个应用编写的特定于应用的StreamItem子类组成。

要直接查看简单的(近乎天真)实现示例,请查看项目/example/models.py文件。

每个希望将其模型暴露给流的Django应用都应该做两件事

  • 创建一个特定的*Item模型。例如,StoryItem应该继承自StreamItem模型,并通过ForeignKey连接到选择加入的模型,在这种情况下是``Story``。

  • 创建一种将那些模型与Stream相关联的方法。这通常通过StreamItem子类的内联接口来完成。

在这些要求之外,您在StreamItem子类上所做的所有其他事情都取决于您。通常将您的StreamItem类用作缓存表,这样您就不必再次查询数据库。

例如,当 StoryItem 被保存时,它会自动存储其相关的 Story 模型的标题,并连接到一个接收器来监听 Storypost_save 信号,以确保每次保存时都重新保存其所有 stream_items

以下几点需要注意

  • 你可以根据需要命名你的 StreamItem 子类

  • 你可以命名你相关的字段,随意选择

  • 它自动具有一个 pub_date,你可以用它来排序,但默认情况下它们是不排序的

安装 & 配置

你可以使用 pip 安装 tt_streams 的最新版本

pip install tt_streams

确保将 tt_streams 添加到你的 INSTALLED_APPS 中。你可以以任何你喜欢的的方式进行添加。这是一个复制粘贴的解决方案

INSTALLED_APPS += ["tt_streams", ]

安装完成后,你必须运行 syncdb,如果你使用 South,则运行 migrate

贡献

  • 创造一些令人惊叹的东西——改进代码,添加一些功能,无论什么(这是最难的部分)。

  • 分支它

  • 创建一个主题分支来存放你的更改

  • 将你的所有提交合并到新的主题分支中

  • 提交一个 pull request

许可证

版权 2013 德克萨斯州论坛

根据 Apache 许可证版本 2.0(“许可证”);除非适用法律要求或书面同意,否则不得使用此文件,除非遵守许可证。你可以在以下地址获取许可证副本:

https://apache.ac.cn/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则在许可证下分发的软件按“原样”提供,不提供任何明示或暗示的保证或条件。有关许可证的具体语言,请参阅许可证。

项目详情


下载文件

下载适合你平台的文件。如果你不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

tt_streams-0.2.0.tar.gz (7.6 kB 查看哈希值)

上传时间

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面