我有一个模型 MyModel(扩展了 Google 的 db.Model),我想跟踪已创建的模型数量。
我认为 Google I/O talk on Sharding Counters中的代码非常好,所以我正在使用它。但是我不确定在创建新代码时应该在哪里调用增量。(我使用的是 Django,并且我将熟悉的 models.py、views.py 等布局保留到项目的应用程序中。)
对于将递增代码放在哪里,似乎有几种可能性:
重载 Model.put() 以便在第一次保存模型时递增计数器,并类似地重载 Model.delete() 以递减计数器
将某种监听器附加到保存/删除,并检查保存是否为新模型(GAE 是否有这样的监听器?)
将计数器递增代码放入创建/删除模型的 view.py 函数中
我非常愿意就如何做到最好(以及每个选项的优缺点)提出建议和想法。
感谢您的阅读。
最好的,布赖恩