I'm using Peewee for a project I'm working on, and I'm trying to figure out how to dynamically set the database so that I can use one for production and one for testing. All the examples I've seen have the following line outside of any class:
database = SqliteDatabase(DATABASE)
which I find strange, since I would think that you would want that to be in a class so you could pass in different database paths. Any suggestions for choosing one database for prod and another for testing?
The database is typically declared at module scope because the model classes are defined there, and they typically depend on the database.
However, you can defer the initialization of your database using these techniques:
The first is useful if you are using the same database class. You really only need the Proxy when you're using Sqlite for dev and Postgres for prod, e.g.