因此,如果用户访问文件,则会创建一个可访问3分钟的链接。 在我的MongoDB上,字段是。
page_link:'link_to_file1',
date_expires: ISODate("2017-06-14T04:30:39.380Z")
因此,当用户再次访问同一文件时。
我将检查page_link的date_expires是否小于当前时间
links = PageLink.objects(page_link = url).first()
date_expires = links.date_expires
current_date = datetime.now()
if str(date_expires) < str(current_date):
#generate a new link.
current_date = datetime.now()
date_expires = current_date + timedelta(minutes = 3)
new_link = PageLink(page_link = url, date_expires = date_expires)
new_link.save()
links = PageLink.objects(page_link = url).first()
final_url = links.page_link
else:
#use existing link
因此,当我访问文件时,如果已经过了3分钟(或者date_expires小于current_date),那么我将使用SAME名称保存一个新的page_link但不同的date_expires。
问题是,
links = PageLink.objects(page_link = url).first()
此代码始终获得第一条记录。当我运行代码时,它总是执行“if”而不是“else”,因此它生成一个具有SAME名称但不同到期的新链接。
如何获取最后一条记录而不是第一条记录?谢谢!