Add random user fetching
This commit is contained in:
parent
205f0ab120
commit
52221d64d3
1 changed files with 23 additions and 2 deletions
|
@ -183,7 +183,23 @@ def get_avatar(user_id):
|
|||
|
||||
output = cursor.fetchall()
|
||||
output = json.dumps([dict(row) for row in output])
|
||||
conn.commit()
|
||||
conn.close()
|
||||
|
||||
if output == '[]':
|
||||
output = None
|
||||
|
||||
return output
|
||||
|
||||
|
||||
def fetch_random_user():
|
||||
conn = sqlite3.connect(DATABASE)
|
||||
conn.row_factory = sqlite3.Row
|
||||
cursor = conn.cursor()
|
||||
cursor.execute(
|
||||
'SELECT user_id, username, score FROM users ORDER BY RANDOM() LIMIT 1')
|
||||
|
||||
output = cursor.fetchall()
|
||||
output = json.dumps([dict(row) for row in output])
|
||||
conn.close()
|
||||
|
||||
if output == '[]':
|
||||
|
@ -203,9 +219,12 @@ def process_request(uri):
|
|||
- /mocha/update/{user_id}/{score}
|
||||
- /mocha/avatar/{user_id} Get user's avatar
|
||||
- /mocha/avatar/{user_id}/{avatar} Set user's avatar
|
||||
- /mocha/random Returns a random user
|
||||
'''
|
||||
parts = uri.split('/')[1:]
|
||||
assert parts[0] == 'mocha'
|
||||
if len(parts) < 2:
|
||||
return None
|
||||
|
||||
output = None
|
||||
|
||||
|
@ -225,6 +244,8 @@ def process_request(uri):
|
|||
output = set_avatar(parts[2], parts[3])
|
||||
else:
|
||||
output = get_avatar(parts[2])
|
||||
elif parts[1] == 'random':
|
||||
output = fetch_random_user()
|
||||
else:
|
||||
output = None
|
||||
|
||||
|
@ -253,6 +274,6 @@ def application(environ, start_response):
|
|||
|
||||
|
||||
if __name__ == '__main__':
|
||||
print(process_request('/mocha/avatar/1'))
|
||||
print(fetch_random_user())
|
||||
|
||||
# vim: tabstop=4 shiftwidth=4 softtabstop=4 expandtab
|
||||
|
|
Reference in a new issue