在创建新模型时,应该将自增分片计数器的代码放在哪里?
我有一个模型叫 MyModel(它是从谷歌的 db.Model 扩展出来的),我想记录一下创建了多少个这样的模型。
我觉得谷歌在他们的 I/O 讲座中提到的关于 分片计数器 的代码挺不错的,所以我打算用那个。不过我不太确定在创建新模型的时候,应该在哪里调用增加计数的代码。(我在用 Django,并且保持了项目应用中常见的 models.py、views.py 等布局。)
我想到了一些可能放置增加计数代码的地方:
重写 Model.put() 方法,这样在模型第一次保存的时候就可以增加计数,同时重写 Model.delete() 方法来减少计数。
给保存和删除操作加一个监听器,检查保存的是否是新模型(GAE 有没有这样的监听器?)
把增加计数的代码放在 view.py 中负责创建/删除模型的函数里。
如果能给我一些建议和想法,告诉我怎么做最好(还有每个选项的优缺点),我会非常感激。
谢谢你的阅读。
祝好,
布莱恩
1 个回答
2