Override flask's url_for
This commit is contained in:
parent
7ace430dee
commit
c10aedd4dc
17
atst/app.py
17
atst/app.py
@ -2,11 +2,12 @@ import os
|
|||||||
import re
|
import re
|
||||||
from configparser import ConfigParser
|
from configparser import ConfigParser
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from flask import Flask, request, g, session
|
from flask import Flask, request, g, session, url_for as flask_url_for
|
||||||
from flask_session import Session
|
from flask_session import Session
|
||||||
import redis
|
import redis
|
||||||
from unipath import Path
|
from unipath import Path
|
||||||
from flask_wtf.csrf import CSRFProtect
|
from flask_wtf.csrf import CSRFProtect
|
||||||
|
from urllib.parse import urljoin
|
||||||
|
|
||||||
from atst.database import db
|
from atst.database import db
|
||||||
from atst.assets import environment as assets_environment
|
from atst.assets import environment as assets_environment
|
||||||
@ -63,6 +64,7 @@ def make_app(config):
|
|||||||
|
|
||||||
make_flask_callbacks(app)
|
make_flask_callbacks(app)
|
||||||
register_filters(app)
|
register_filters(app)
|
||||||
|
register_jinja_globals(app)
|
||||||
make_csp_provider(app, config.get("CSP", "mock"))
|
make_csp_provider(app, config.get("CSP", "mock"))
|
||||||
make_crl_validator(app)
|
make_crl_validator(app)
|
||||||
make_mailer(app)
|
make_mailer(app)
|
||||||
@ -293,3 +295,16 @@ def apply_json_logger():
|
|||||||
"root": {"level": "INFO", "handlers": ["wsgi"]},
|
"root": {"level": "INFO", "handlers": ["wsgi"]},
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def register_jinja_globals(app):
|
||||||
|
static_url = app.config.get("STATIC_URL", "/static/")
|
||||||
|
|
||||||
|
def _url_for(endpoint, **values):
|
||||||
|
if endpoint == "static":
|
||||||
|
filename = values["filename"]
|
||||||
|
return urljoin(static_url, filename)
|
||||||
|
else:
|
||||||
|
return flask_url_for(endpoint, **values)
|
||||||
|
|
||||||
|
|
||||||
|
app.jinja_env.globals["url_for"] = _url_for
|
||||||
|
Loading…
x
Reference in New Issue
Block a user