Remove data for old links
This commit is contained in:
parent
236f050f54
commit
93d1dab63a
23
app/func/remove_old_data.py
Normal file
23
app/func/remove_old_data.py
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
import sqlalchemy
|
||||||
|
import datetime
|
||||||
|
|
||||||
|
from db import engine
|
||||||
|
|
||||||
|
"""
|
||||||
|
Remove all links and associated records when the expire date has passed
|
||||||
|
"""
|
||||||
|
def remove_old_data():
|
||||||
|
with engine.begin() as conn:
|
||||||
|
today = datetime.datetime.date(datetime.datetime.now())
|
||||||
|
old_links = conn.execute(sqlalchemy.text('SELECT link FROM links WHERE expire_date < :today'), [{'today': today}])
|
||||||
|
|
||||||
|
delete_links = []
|
||||||
|
|
||||||
|
for row in old_links:
|
||||||
|
link = row.link
|
||||||
|
delete_links.append({'link': link})
|
||||||
|
|
||||||
|
with engine.begin() as conn:
|
||||||
|
conn.execute(sqlalchemy.text('DELETE FROM links WHERE link = :link'), delete_links)
|
||||||
|
conn.execute(sqlalchemy.text('DELETE FROM records WHERE link = :link'), delete_links)
|
||||||
|
conn.commit()
|
Loading…
x
Reference in New Issue
Block a user