Migrations
Definition
Migrations (are the short name for Database Migrations).
Migrations are the version control of your database. They are very useful for generating and documenting the database tables.
Principles
-
Migrations SHOULD be created inside the Containers folders.
-
Migrations will be autoloaded by the framework.
Rules
- No need to publish the DB Migrations. Just run the
artisan migrate
command and Laravel will read the Migrations from the Containers.
Folder Structure
- app
- Containers
- {section-name}
- {container-name}
- Data
- Migrations
- 2200_01_01_000001_create_something_table.php
- ...
Code Samples
User CreateDemoTable Migrations
class CreateDemoTable extends Migration
{
public function up()
{
Schema::create('demos', function (Blueprint $table) {
$table->increments('id');
// ...
$table->timestamps();
$table->softDeletes();
});
}
public function down()
{
Schema::drop('demos');
}
}
Further reading
More info at Laravel Docs.