Better solution for generating WHERE clause for message ranges
This commit is contained in:
parent
cefc2c1125
commit
1346ece242
2 changed files with 3 additions and 6 deletions
|
@ -77,10 +77,7 @@ class MessageRange():
|
|||
|
||||
return "?"
|
||||
|
||||
def where(self, table=None):
|
||||
prefix = '' if table is None else f"{table}."
|
||||
column = prefix + 'id'
|
||||
|
||||
def where(self, column='id'):
|
||||
if self.id is not None:
|
||||
return "%s = %d" % (column, self.id)
|
||||
|
||||
|
|
|
@ -259,7 +259,7 @@ class Session():
|
|||
if len(args) > 1:
|
||||
msgrange = MessageRange.parse(args[1])
|
||||
|
||||
sql += " and " + msgrange.where()
|
||||
sql += " and " + msgrange.where('message_id')
|
||||
|
||||
summary = self._newsgroup_summary(newsgroup)
|
||||
cr = self.db.execute(sql, (newsgroup.id,))
|
||||
|
@ -547,7 +547,7 @@ class Session():
|
|||
and newsgroup_message.newsgroup_id = ?
|
||||
"""
|
||||
|
||||
sql += " and " + msgrange.where('message')
|
||||
sql += " and " + msgrange.where('newsgroup_message.message_id')
|
||||
|
||||
cr = self.db.query_sql(Message, sql, (self.newsgroup.id,))
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue