URLs are now unique.

This commit is contained in:
Jonathan Harker 2010-06-04 05:01:37 +12:00
parent eb6357a3b8
commit a187045c0c

View file

@ -78,7 +78,7 @@ class Url(SqlBase):
id = Column(Integer, primary_key=True) id = Column(Integer, primary_key=True)
timestamp = Column(DateTime) timestamp = Column(DateTime)
nickname = Column(String(20)) nickname = Column(String(20))
url = Column(String(200)) url = Column(String(200), unique=True)
title = Column(Text) title = Column(Text)
def __init__(self, nickname, url, title=None, timestamp=None): def __init__(self, nickname, url, title=None, timestamp=None):
@ -193,10 +193,18 @@ class LolBot(SingleServerIRCBot):
return datetime.today().strftime("%Y-%m-%d %H:%M:%S") return datetime.today().strftime("%Y-%m-%d %H:%M:%S")
def save_url(self, nickname, url): def save_url(self, nickname, url):
theurl = Url(nickname, url)
db = self.get_session() db = self.get_session()
db.add(theurl) if not db.query(Url).filter(Url.url == url).count():
db.commit() theurl = Url(nickname, url)
db.add(theurl)
db.commit()
else:
try:
theurl = db.query(Url).filter(Url.url == url).one()
except MultipleResultsFound, ex:
print ex #wtf
except NoResultsFound, ex:
print ex #wtf
print theurl print theurl
return theurl.title return theurl.title