Laravel连接数据库Migration和Seeder
Laravel是一款流行的PHP开发框架,它提供了许多便捷的工具来帮助开发者连接和操作数据库。在本文中,我们将探讨如何使用Laravel的Migration和Seeder功能来连接数据库并填充数据。
Laravel的Auth系统
在开始之前,我们首先需要设置Laravel的Auth系统。运行以下命令来生成Auth系统的基本文件:
```
php artisan make:auth
```
这个命令会生成一些基本的认证相关的文件和视图。接下来,我们需要修改配置文件以连接到我们的数据库。打开`.env`文件,将以下配置替换为你自己的数据库配置:
```
DB_HOST127.0.0.1
DB_PORT3306
DB_DATABASElaravel
DB_USERNAMEroot
DB_PASSWORDpassword
```
保存文件后,我们就可以通过访问`http://127.0.0.1/login`来打开登录页面了。
进行数据库迁移(Migration)
数据库配置好之后,在登录界面填写任意邮箱和密码,点击"Login"按钮,你应该会得到一个成功登录的提示。
现在,我们需要创建数据库表。运行以下命令来执行数据库迁移:
```
php artisan migrate
```
如果一切顺利,你应该会看到迁移成功的提示。现在,你可以尝试在`http://127.0.0.1/register`注册一个新用户了。
使用Migration和Seeder
接下来,我们将为一个名为"Article"的模型生成对应的Migration和Seeder。
首先,运行以下命令来生成Migration文件:
```
php artisan make:migration create_articles_table
```
这个命令会在`database/migrations`目录下生成一个新的Migration文件。打开该文件,将`up`函数修改为以下代码:
```php
public function up()
{
Schema::create('articles', function (Blueprint $table) {
$table->increments('id');
$table->string('title');
$table->text('body')->nullable();
$table->integer('user_id');
$table->timestamps();
});
}
```
这几行代码描述了"Article"模型对应的数据库表的结构。Laravel默认情况下,模型的表名是模型类名的复数形式,所以这里对应的表名是"articles"。
保存文件后,运行以下命令将PHP代码转换为真实的MySQL数据表:
```
php artisan migrate
```
执行成功后,你应该能在数据库中看到新创建的"articles"表。
接下来,我们需要创建一个Seeder来填充一些假数据。运行以下命令创建一个新的Seeder文件:
```
php artisan make:seeder ArticleSeeder
```
这个命令会在`database/seeds`目录下生成一个新的Seeder文件。打开该文件,将`run`函数修改为以下代码:
```php
public function run()
{
DB::table('articles')->delete();
for ($i 0; $i < 10; $i ) {
AppArticle::create([
'title' > 'Title ' . $i,
'body' > 'Body ' . $i,
'user_id' > 1,
]);
}
}
```
保存文件后,我们还需要运行以下命令将Seeder加入自动加载系统:
```
composer dump-autoload
```
然后执行以下命令来填充数据:
```
php artisan db:seed
```
现在,刷新数据库中的"articles"表,你应该能看到已经插入了10行假数据。
通过使用Laravel的Migration和Seeder功能,我们可以轻松地连接数据库并填充数据。这些功能使得开发者可以更加高效地进行数据库操作,提高开发效率。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。