The previous article has introduced the establishment of the development environment. This article will focus on actual project development and understand the laravel framework step by step. First, let’s understand the model of laravel framework (Models)
When developing an mvc project, models are the first step.
Let’s start with modeling.
1. Entity relationship diagram,
Since I don’t know any good modeling tools in PHP, here I use vs ado.net entity model data modeling
Let’s start laravel coding. Before coding, you must first configure the database connection. In the app/config/database.php file
'mysql' => array( 'driver' => 'mysql', 'read' => array( 'host' => '127.0.0.1:3306', ), 'write' => array( 'host' => '127.0.0.1:3306' ), 'database' => 'test', 'username' => 'root', 'password' => 'root', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', ),
After configuration, you need to use the artisan tool, which is a php command tool in the laravel directory
First you need to create a migration migrate through artisan, which is almost exactly the same as asp.net mvc
Shfit + right-click in the laravel directory to open the command window and enter artisan migrate:make create_XXXX to generate a migration file with a timestamp prefix under the app/database/migrations file
Code:
<?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateTablenameTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { } /** * Reverse the migrations. * * @return void */ public function down() { } }
Anyone who has experience in entityframework migration here basically finds that it is surprisingly similar.
The next step is to create our entity structure. Laravel’s structure generator can refer to http://www.php.cn/
<?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateTablenameTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('posts', function(Blueprint $table) { $table->increments('id'); $table->unsignedInteger('user_id'); $table->string('title'); $table->string('read_more'); $table->text('content'); $table->unsignedInteger('comment_count'); $table->timestamps(); }); Schema::create('comments', function(Blueprint $table) { $table->increments('id'); $table->unsignedInteger('post_id'); $table->string('commenter'); $table->string('email'); $table->text('comment'); $table->boolean('approved'); $table->timestamps(); }); Schema::table('users', function (Blueprint $table) { $table->create(); $table->increments('id'); $table->string('username'); $table->string('password'); $table->string('email'); $table->string('remember_token', 100)->nullable(); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::drop('posts'); Schema::drop('comments'); Schema::drop('users'); } }
Continue to enter php artisan migrate in the above command window and the migration will be executed