From fdd7c52bbdfa4f6f96af0e2c0c148d3ca215596c Mon Sep 17 00:00:00 2001 From: lxa4096 <lxa4096@tutamail.com> Date: Mon, 15 Apr 2024 16:43:22 +0200 Subject: [PATCH] fix(flask-babel 4.0.0 breakage): pass get_locale function to Babel constructor Fixes 'Babel' object has no attribute 'localeselector' for the new flask-babel==4.0.0 version. https://python-babel.github.io/flask-babel/index.html For the future pipenv for dependency management may be considered --- lehrpreis.py | 11 ++++++----- requirements.txt.lock | 20 ++++++++++++++++++++ 2 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 requirements.txt.lock diff --git a/lehrpreis.py b/lehrpreis.py index 9eb235c..6486467 100755 --- a/lehrpreis.py +++ b/lehrpreis.py @@ -28,14 +28,15 @@ login_manager.login_view = '.login' login_manager.login_message = gettext('Please log in to access this page.') login_manager.login_message_category = 'alert-info' # login_manager.session_protection = 'strong' # basic -babel = Babel(app) -@babel.localeselector def get_locale(): - if not ('lang' in session): - session['lang'] = request.accept_languages.best_match(['de', 'en']) - return session['lang'] + if not ("lang" in session): + session["lang"] = request.accept_languages.best_match(["de", "en"]) + return session["lang"] + + +babel = Babel(app, locale_selector=get_locale) # http://flask.pocoo.org/snippets/120/ diff --git a/requirements.txt.lock b/requirements.txt.lock new file mode 100644 index 0000000..79b14ac --- /dev/null +++ b/requirements.txt.lock @@ -0,0 +1,20 @@ +Babel==2.14.0 +blinker==1.7.0 +click==8.1.7 +Flask==3.0.3 +flask-babel==4.0.0 +Flask-Login==0.6.3 +Flask-SQLAlchemy==3.1.1 +Flask-WTF==1.2.1 +greenlet==3.0.3 +itsdangerous==2.1.2 +Jinja2==3.1.3 +ldap3==2.9.1 +MarkupSafe==2.1.5 +psycopg2-binary==2.9.9 +pyasn1==0.6.0 +pytz==2024.1 +SQLAlchemy==2.0.29 +typing_extensions==4.11.0 +Werkzeug==3.0.2 +WTForms==3.1.2 -- GitLab