本文为 《L01 Laravel 教程 - Web 开发实战入门 ( Laravel 6.x )》 课程学习笔记,方便工作中快速查看 Laravel 6 重要知识点。
原文链接:https://www.childsay.com/lara...
同步时间:2019-10-12
homestead vagrant 常用操作
// 确保在此目录下操作
cd ~/Homestead
// 开启 Homestead 虚拟机
vagrant up
// 通过 SSH 链接 Homestead 虚拟机
vagrant ssh
// 关机
vagrant halt
// 对 Homestead.yaml 文件修改后,执行以下命令生效
vagrant provision && vagrant reload
链接 Homestead 里 MySQL 数据库
- host 127.0.0.1
- port 33060
- user homestead
- password secret
使用阿里云的 Composer 加速镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
创建 Laravel 6.x 项目,项目名称为 weibo
composer create-project laravel/laravel weibo --prefer-dist "6.*"
Blade 模板继承布局
布局文件定义
// resources/views/layouts/default.blade.php
<!DOCTYPE html>
<html>
<head>
<title>@yield('title', 'Weibo App')</title>
</head>
<body>
@yield('content')
</body>
</html>
布局使用方法
// resources/views/static_pages/help.blade.php
@extends('layouts.default')
@section('title', '帮助')
@section('content')
<h1>帮助页</h1>
@stop
如果删除 @section('title', '帮助') ,网页 title 则默认显示 Weibo App 。如果 @section 不传第二个参数,则需要使用 @stop 来标识 @section 区块结束。
常用 artisan 命令说明
命令 | 说明 |
---|---|
php artisan key:generate | 生成 App Key |
php artisan make:controller | 生成控制器 |
php artisan make:model | 生成模型 |
php artisan make:policy | 生成授权策略 |
php artisan make:seeder | 生成 Seeder 文件 |
php artisan migrate | 执行迁移 |
php artisan migrate:rollback | 回滚迁移 |
php artisan migrate:refresh | 重置数据库 |
php artisan db:seed | 填充数据库 |
php artisan tinker | 进入 tinker 环境 |
php artisan route:list | 查看路由列表 |
通过 laravel ui 使用 bootstrap
composer require laravel/ui --dev
php artisan ui bootstrap
// 配置 npm 和 yarn 使用淘宝镜像
npm config set registry=https://registry.npm.taobao.org
yarn config set registry 'https://registry.npm.taobao.org'
yarn install --no-bin-links
// resources 目录下文件改变时会自动编译,输出到 public 目录中。
npm run watch-poll
如果执行失败,删除 package.json 中的 cross-env 并在 devDependencies 中加入 "vue-template-compiler": "^2.6.10"
静态资源使用
<link rel="stylesheet" href="{{ mix('css/app.css') }}">
mix 函数使用 public 作为根目录,最终生成 /css/app.css
静态资源缓存问题
// webpack.mix.js
mix.js('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css').version();
只需要添加 .version() 即可,最终生成文件 /css/app.css?id=350d79d6458127c0fe98" ,文件有改动时 id 值会改变,缓存失败。
数据库迁移和数据填充
// 执行迁移,迁移文件中的 up 方法将会执行
php artisan migrate
// 回滚撤消最近一次迁移操作
php artisan migrate:rollback
// 重置数据库,数据会被清空。
php artisan migrate:refresh
执行数据填充步骤,定义模型工厂(非必须)、定义 Seeder 文件、在 DatabaseSeeder.php 中定义填充执行顺序
// 数据库的重置和填充操作
php artisan migrate:refresh
php artisan db:seed
// 一条命令完成以上操作
php artisan migrate:refresh --seed
// 执行指定的填充文件
php artisan make:seeder UsersTableSeeder
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。