Laravel框架实现案例之文章CRUD(文章增删改查)

本文详细介绍了如何使用Laravel框架进行文章的CRUD操作,包括创建数据库、配置数据库连接、数据库迁移、创建模型、控制器、视图以及处理新增、编辑、删除数据时的常见问题和解决方案,如字段长度限制、CSRF保护等。

1. 创建名为news的数据库

2. 创建名为news的项目

PS D:\developer\laravel> composer create-project --prefer-dist laravel/larave/ news

3 配置数据库连接

首先在 .env中配置数据库连接信息

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=news
DB_USERNAME=root
DB_PASSWORD=root

4. 数据库迁移

4.1 创建数据库迁移文件

运行如下命令,创建数据库迁移文件

 php artisan make:migration create_post_table

在刚创建的数据库迁移文件中,编辑数据库迁移文件

public function up()
    {
        Schema::create('post', function (Blueprint $table) {
            $table->increments('id');
            $table->string("title")->default('');
            $table->string("content")->default('');
            $table->timestamps();
        });
    }

4.2 运行数据库迁移文件

运行如下命令,执行数据库迁移文件

 php artisan migrate

可能会出现如下的错误提示
在这里插入图片描述
错误原因在于laravel 框架赋予字段你的默认长度超过了mysql数据库允许的字段的最大长度,解决方法是设置 laravel 框架中字段的默认长度不要超过mysql 的长度
在app\providers目录下的AppServiceProvider文件中的boot函数中,加入如下代码

public function boot()
    {
        // 设置字段默认长度
        Schema::defaultStringLength(200);
    }

重新运行如下的命令

 php artisan migrate

又出现如下错误

SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists

原因在于数据库中已经存在响应的表了,删除这些表,然后重新执行数据库迁移文件
在这里插入图片描述

4.3 如何添加新的字段

现在想为Post表添加一个字段
在这里插入图片描述
代码修改好后,重新运行数据库迁移

php artisan migrate

提示没有迁移任何内容

解决方案是在数据库中删除 post 表,并将 migrations 表中的对应数据删除,然后重新运行数据库迁移即可
再创建数据库迁移文件


                
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值