Laravel 5.4 实现基础CRUD操作教程
17 浏览量
更新于2024-09-05
收藏 589KB PDF 举报
本文主要介绍了如何在Laravel 5.4版本中进行基本的数据库增删改查操作,包括数据库配置、路由设置以及控制器中的核心代码实现,并提到了使用Model进行数据操作的方法。
1. 数据库配置
在Laravel中,数据库配置位于`config/database.php`文件中。你需要在这里定义你的数据库连接,包括数据库类型(如MySQL)、主机名、用户名、密码和数据库名称。例如:
```php
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'strict' => true,
'engine' => null,
],
```
环境变量可以通过`.env`文件进行配置,这允许你在不同环境中轻松切换数据库设置。
2. 路由配置
在`routes/web.php`或`routes/api.php`中配置路由。在示例中,`namespace`定义了控制器的命名空间,`ScoreController@addScore`指定了控制器和方法。`Route::post`表示使用POST请求方式,`score/add`是访问的URL路径,而`ScoreController`是控制器类,`addScore`是处理请求的方法。
```php
Route::namespace('KeekoSmallGame')->group(function () {
Route::post('score/add', 'ScoreController@addScore');
});
```
3. 控制器中的增删改查操作
在控制器中,你可以使用Laravel的Eloquent ORM(对象关系映射)来执行数据库操作。例如:
- `first()`:获取匹配条件的第一条数据。
- `save()`:用于更新已有记录或插入新记录。
- `get()`:获取多条数据。
- `delete()`:删除指定的记录。
```php
public function addScore(Request $request)
{
$score = Score::where('sid', $request->get('sid'))->first();
// 如果记录存在,更新分数
if ($score) {
$score->score += $someValue;
$score->save();
} else {
// 插入新记录
$newScore = new Score(['sid' => $request->get('sid'), 'score' => $someValue]);
$newScore->save();
}
}
```
4. 使用Model
Laravel的Model提供了更高级别的抽象,可以方便地进行数据库操作。首先创建一个Model,例如`app/Models/Score.php`:
```php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Score extends Model
{
protected $table = 'scores'; // 指定模型对应的数据库表
public $timestamps = false; // 如果不需要时间戳字段,可以设置为false
}
```
然后在控制器中,你可以直接使用Model进行操作:
```php
use App\Models\Score;
public function addScore(Request $request)
{
$score = Score::where('sid', $request->get('sid'))->firstOrCreate([
'score' => $someValue
]);
// 或者,如果需要更新现有记录
$score = Score::where('sid', $request->get('sid'))->update([
'score' => $someValue
]);
// 删除记录
Score::where('sid', $request->get('sid'))->delete();
}
```
5. 调试与测试
在开发过程中,可以使用`dd()`函数或`log()`方法来调试代码并查看结果。Laravel的日志系统可以记录错误和信息,方便后期排查问题。
Laravel 5.4提供了一套优雅的框架,使得数据库操作变得简单直观。通过配置数据库、定义路由、编写控制器和使用Model,开发者可以高效地完成增删改查任务,同时享受到Laravel带来的强大功能和良好开发体验。
2023-04-11 上传
2023-06-24 上传
2024-06-22 上传
2023-08-30 上传
2023-06-10 上传
2024-03-07 上传
2023-09-08 上传
2023-08-22 上传
weixin_38690017
- 粉丝: 5
- 资源: 923
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦