Skip to content

Commit

Permalink
Ensure extensions are loaded before introspecting database.
Browse files Browse the repository at this point in the history
Refs #138
  • Loading branch information
coleifer committed Dec 13, 2023
1 parent a82991f commit ed80c34
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions sqlite_web/sqlite_web.py
Original file line number Diff line number Diff line change
Expand Up @@ -1266,17 +1266,18 @@ def initialize_app(filename, read_only=False, password=None, url_prefix=None,
die('Unable to open database file in read-only mode. Ensure that '
'the database exists in order to use read-only mode.')
db.close()
dataset = SqliteDataSet(db, bare_fields=True, **dataset_kw)
else:
dataset = SqliteDataSet('sqlite:///%s' % filename, bare_fields=True,
**dataset_kw)

if url_prefix:
app.wsgi_app = PrefixMiddleware(app.wsgi_app, prefix=url_prefix)
db = SqliteDatabase(filename)

if extensions:
# Load extensions before performing introspection.
for ext in extensions:
dataset._database.load_extension(ext)
db.load_extension(ext)

dataset = SqliteDataSet(db, bare_fields=True, **dataset_kw)

if url_prefix:
app.wsgi_app = PrefixMiddleware(app.wsgi_app, prefix=url_prefix)

migrator = dataset._migrator
dataset.close()
Expand Down

0 comments on commit ed80c34

Please sign in to comment.