美文网首页
Laravel 6 教程学习笔记

Laravel 6 教程学习笔记

作者: tumobi | 来源:发表于2019-10-12 10:47 被阅读0次

    本文为 《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
    

    相关文章

      网友评论

          本文标题:Laravel 6 教程学习笔记

          本文链接:https://www.haomeiwen.com/subject/uixqmctx.html