Laravel 6 教程学习笔记

本文为 《L01 Laravel 教程 - Web 开发实战入门 ( Laravel 6.x )》 课程学习笔记,方便工作中快速查看 Laravel 6 重要知识点。

原文链接:https://www.childsay.com/laravel-6-01-note.html
同步时间: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
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 简介 Laravel 致力于让你在 PHP 开发过程中更加轻松愉快,这其中也包括本地开发环境的搭建。 Vagran...
    曼巴童鞋阅读 6,974评论 0 3
  • 校园失物招领平台开发 ——基于laravel框架构建最小内容管理系统 摘要 ​ 针对目前大学校园人口密度大、人群活...
    蓝莲花xzsky阅读 11,380评论 8 54
  • 今天逞强修教室的鼠标,结果把手划伤,晚上吃了太多的蛋卷和榨菜。 今日坚持 1,练字。广,庆 2,读5页杂志。今天建...
    梦_12c2阅读 1,018评论 0 0
  • 走过很多 小小的石拱桥 它们横跨在碧色溪水上 高低错落、翩翩起舞 多像是弹跳在水间的音符 描摹出细柳如丝 迎送着渔...
    0e11d20558de阅读 734评论 0 0
  • 老公说 “恭喜你马上就可以见到你那相亲相爱的儿子了,三天以后,你俩打的叽哇乱叫横眉冷对谁也不认识谁的时候,不要找我...
    Elaine_ying阅读 1,153评论 0 0

友情链接更多精彩内容