【问题标题】:Simple Plone statistics over time随着时间的推移简单的克隆统计
【发布时间】:2016-11-30 17:33:08
【问题描述】:

我想评估我的 Plone 安装的一些统计数据,首先我想知道我的 Plone 的总页数如何随时间变化。

我查看了现有的 Plone 统计插件。不幸的是,Plone 5.0 没有。我让 quintagroup.analytics 运行。这个插件有一些有趣的指标,但并不能帮助我看到随着时间的推移的发展。

所以我开始自己编程。为了获得当前的页数,我计划使用这样的目录查询:

catalog = getToolByName(self.context, 'portal_catalog')
catalog.searchResults({'portal_type': 'Document'})
return len(results)

python 脚本应该由 cron 作业每小时运行一次,并将结果写入日志文件供我稍后评估。

我的问题是:有没有我没有看到的更简单的解决方案?我的解决方案会奏效吗?你在其中看到任何概念上的错误吗? 我想知道互联网上没有更多类似的问题。人们对他们的 CMS 的指标不是很感兴趣,还是我忽略了一个明显的简单解决方案? 目前解决方案还没有启动,因为我对 plone 插件的结构缺乏经验,尤其是调用 python 脚本,但我正在努力。

【问题讨论】:

  • 您可以使用 portal_catalog 中的 creationDate 来为自己提供随时间创建的项目的数据 - 不过这显然会忽略已删除的项目。

标签: plone plone-5.x


【解决方案1】:

如果您转到“站点设置”->“敏捷内容类型”,您可以查看您的站点中当前存在多少特定内容类型的对象,例如:

http://plonedemo.kitconcept.com/@@dexterity-types

不过,没有现成的方式来收集或呈现这些统计数据。

【讨论】:

    【解决方案2】:

    您可以使用目录本身提供的数据:

    portal_catalog.Indexes['portal_type'].uniqueValues(withLengths=True)
    

    为您提供所有类型的计数,作为(name, count) 元组的列表:

    (('CaptchaField', 2), ('Collection', 2), ('Document', 676), ...
    

    我没有仔细检查这是否可以避免搜索并len-ing 结果,但如果您认为您可能对不止一种类型感兴趣,它比目录搜索更容易。

    (我只在 4.3.x/Archetypes 上检查过这一点,但我认为只要它仍然使用 portal_catalog,它就不会与 5.x/Dexterity 一起使用。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-22
      • 2015-06-18
      • 1970-01-01
      • 2016-10-07
      • 2012-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多