Since release 1.3, the Themosis framework is bundled with the
Illuminate/database package. It provides a performant database query builder as well as the popular Eloquent ORM.
The database guide won't provide a full copy of the official documentation but instead give you notes about possible differences on how things are managed or organized within the Themosis framework.
For detailed information about the database package API, please read the official documentation:
The Themosis framework is a WordPress application stack. It is configured to handle a MySQL database connection by default. Database configuration is done inside your application
config/database.php configuration file.
You can also define multiple database connections to let your application read/write data from another data source but those connections are not tight with your WordPress instance.
Migrations are like version control for your database, allowing anyone on your team to easily modify and share the application's database schema. The Themosis framework is now handling the Laravel schema builder in order to easily build your application's database schema.
Schema facade provides database agnostic support for creating and manipulating tables accross all supported database systems.
In order to create a new migration, use the
make:migration console command:
php console make:migration create_customers_table
The migration file is placed into the
database/migrations directory. See the official documentation for detailed explanation on how to write migrations.
To run all migrations, simply call the
migrate console command:
php console migrate
If you use the Homestead virtual machine, make sure to run this command from the virtual machine.
Migration operations may be destructive. In order to protect you from running these commands against your production database, you will be prompted for confirmation before the commands are executed. To force a migration command to run, use the
php console migrate --force
All rolling back commands are available though the console but you must take extra care when executing the
migrate:fresh command. That command is going to drop all your database tables. As WordPress tables are not yet handled by migrations, executing that command will make you lose all your data.
php console migrate:install php console migrate:refresh php console migrate:reset php console migrate:rollback php console migrate:status
Made in Belgium