课件笔记和项目分享

创建新项目:

composer create-project laravel/laravel weibo

git分支命令:

切换到master分支:git checkout master

创建新分支并切换:git checkout -b test

删除分支:git branch -d test

合并到master分支:git checkout master && git merge test

查看所有分支:git branch -v

Blade模板:

继承用于构建页面总布局

组件用于构建页面中常用块,一般一个页面可能多次用到的块

子视图用于构建页面中的某一块,一般一个页面只用一次的块

辅助函数:

string mix(string $filename) 函数将$name文件按 public/mix-manifest.json 中的映射转换为带指定id参数的文件,id值 = substr(md5_file($filename), 0, 20),解决前端文件更新后浏览器缓存问题。

compact($var1, $var2, ...) 返回 [$var1 => $val1, $var2 => $val2, ...],常用给视图数据打包: view($name, compact(...))

laravel数据库迁移:

创建迁移:php artisan make:migration migration_file_name

--create=tbname 创建tbname表,--table=tbname 修改tbname表

执行迁移:php artisan migrate

重新构建迁移:php artisan migrate:refresh

执行迁移并执行数据填充:php artisan migrate:refresh --seed

每次执行迁移会在数据库中的migrations记录,该表也用于回滚迁移。

每个迁移对应一个迁移类,类中的up()函数执行迁移,down()函数回滚迁移

Laravel模型操作:

创建:

  1. Model::create();
  2. Model::insert($users);
  3. $model = new Model; $model->k = $v; $model->save();

删除:

  1. $model->delete();
  2. Model::where()->delete();

更新:

  1. $model = Model::find($id); $model->k = $v; $model->save();
  2. $model->where()->update([$k => $v]);

查询:

  1. 单个:Model::find($id),Model::where()->first();
  2. 多个:Model::where()->get();
  3. 全部:Model::all();

排序:

  1. $model->orderBy($field, 'desc' | 'asc') 默认为 asc
  2. 逆序:$model->orderByDesc($field);

Laravel模型关联函数:

一对一 关联(1<->1):

  • 正向(1->1): hasOne()
  • 反向(1<-1): belongsTo()

一对多关联(1<->n):

  • 正向(1->n):hasMany()
  • 反向(1<-1): belongsTo()

多对多关联(n<->n):

  • 正向(1 ->n): belongsToMany()
  • 反向(n<-1): belongsToMany()

使用关联函数返回构造器,使用关联动态属性返回关联的模型集合。

HTTP请求方法的RESTful含义

方法 含义
GET 获取资源
POST 创建资源
PUT/PATCH 更新资源
DELETE 删除资源

Laravel资源路由

定义:Route::resource('users', 'UserController');

相当于:

方法 路由 控制器方法 路由名称 含义
GET /users UserController@index users.index 获取资源列表
GET /users/{user} UserController@show users.show 获取资源
GET /users/create UserController@create users.create 创建资源表单页面
POST /users UserController@store users.store 存储资源
GET /users/{user}/edit UserController@edit users.edit 更新资源表单页面
PUT/PATCH /users/{user} UserController@update users.update 更新资源
DELETE /users/{user} UserController@destroy users.destroy 删除资源

Laravel数据库

  • factory 模型工厂:生成假数据模型
  • seeder 数据填充:添加假数据到数据库(一般会用到factory)
  • migrate 数据库迁移:创建,修改数据库(表)

验证表单数据:

在控制器中:$this->validate($request->all(), $rules);

使用请求实例:$request->validate($rules);

使用Facades:$validator = Validator::make($request->all(), $rules);

Auth门面方法:

  • attempt($creds, $isRemember) 尝试登陆
  • check() 是否登陆
  • user() 获取登陆用户
  • id() 获取登陆用户id
  • login($user) 登陆指定用户
  • logout() 退出登录

项目截图

课件笔记和项目分享
课件笔记和项目分享
课件笔记和项目分享
课件笔记和项目分享
课件笔记和项目分享

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!