API - add preference for imperial units conversion

This commit is contained in:
Sam
2021-11-13 19:46:12 +01:00
parent d60bf52505
commit bb2c149caa
11 changed files with 75 additions and 2 deletions

View File

@ -1,6 +1,7 @@
from typing import Dict
from flask import current_app
from sqlalchemy import exc
from sqlalchemy.engine.base import Connection
from sqlalchemy.event import listens_for
from sqlalchemy.ext.declarative import DeclarativeMeta
@ -25,7 +26,15 @@ class AppConfig(BaseModel):
@property
def is_registration_enabled(self) -> bool:
nb_users = User.query.count()
try:
nb_users = User.query.count()
except exc.ProgrammingError as e:
# workaround for user model related migrations
if 'psycopg2.errors.UndefinedColumn' in str(e):
result = db.engine.execute("SELECT COUNT(*) FROM users;")
nb_users = result.fetchone()[0]
else:
raise e
return self.max_users == 0 or nb_users < self.max_users
@property