【问题标题】:Implementing tags on Google App Engine在 Google App Engine 上实施标签
【发布时间】:2011-01-11 07:41:13
【问题描述】:

我已经阅读了similar question 向 Django 博客模型添加标签,其中提到将文章中的标签维护为 StringList 和一个单独的对象以保留这些对象的计数,这很好,因为我会我自己基本上提出了相同的想法,但是我正在努力研究如何保持计数。

我正在覆盖主对象的 put() 方法,但是如何检查标签与当前存储的对象相比是否发生了变化?有什么方法可以在不获取对象的第二个副本的情况下廉价地检查现有数据?

处理它的一种方法是将每个对象存储在 memcache 中,并且只获取它在其中找不到的对象,但是对于一个繁忙的站点,您仍然会经常访问数据存储区。

【问题讨论】:

  • 如果这仍然与您相关,这里有一个 blog post I wrote 关于 ndb.Model 衍生品的混合。

标签: django google-app-engine tags


【解决方案1】:

查看taggable-mixin。这是一种将标签作为 mixin 添加到任何 AppEngine 模型类的非常简单的方法。

【讨论】:

  • 感谢 Adam 的回答,我需要做一些工作才能让它在 Django 下工作,但实际上只有一点点。我已经更新了它附带的 Tiddlywiki 以及我必须做的事情才能让它工作,并将它邮寄给你。
  • 斯图尔特!非常感谢!你能回馈你的发现真是太体面了。
  • taggable-mixin 有一个缺陷,它会在 Tag 模型中保存所有标记实体的列表。如果你有很多实体(例如像 StackOverflow 这样的系统),Tag 实体将会爆炸。最好将该引用保存在可标记实体中 - 每个实体都有一个标记列表。
猜你喜欢
  • 2012-08-26
  • 1970-01-01
  • 1970-01-01
  • 2011-07-15
  • 2013-01-28
  • 2011-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多