我使用Django
作为我的网络应用程序的后端,django-haystack(with Solr)
用于搜索&显示结果。
我使用RealTimeSignalProccessor
表单django-haystack
,但我有一个问题:
- 我有Auction model
和expires-(DateTimeField)
。当我显示结果时,我会像e-bay一样(例如:过期时间:1小时23分5秒)。
问题是,在页面上显示所有拍卖,如果您想在每次访问此视图时更新Expires in
参数(正如我在django-haystack文档中读到的那样),您和# 39; ll必须使用object.save()
方法更新Solr索引数据库。但是,如果我每次进入所有拍卖所在的视图时都会获得30个结果,那么它很慢并且效率不高。
还有其他解决方案吗?你有什么建议?
答案 0 :(得分:1)
无需继续更新数据库中的expires_in
字段 - 在广告到期时保留expires_at
,并计算模型中检索方法中剩余的时间或你的看法。
通过这种方式,您可以避免在流量增加时向数据库写入更多数据,如果到期日期发生变化,如果人们在同一时间查看页面,您将不会遇到可能的竞争条件在你更新到期时间的时候。