博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
laravel学习笔记------安装、路由、输出、migrate
阅读量:7048 次
发布时间:2019-06-28

本文共 2778 字,大约阅读时间需要 9 分钟。

  hot3.png

     一、安装composer(开启vpn)

curl -sS https://getcomposer.org/install | php

     二、移动composer

            为了方便管理,因此我们有必要将composer移动到自己指定文件夹内

mv composer.prar /usr/local/bin/composer

    三、安装laravel

composer create-project laravel/laravel laravel

         之前有整理过一篇文章:

     四、启动laravel服务

             方法1

php -S localhost:8765 -t public

             方法2

php artisan serve

             或者有更多方法。。。。。

       五、laravel创建控制器

php artisan make:contaoller TestController

            或者你使用更粗暴的方法。。。。。

     六、路由规则

           Route:: 方式('参数',控制器@方法)

           例如:

Route::get('/login','LoginController@index');

     七、变量输出

return view('public/login',$data);

return view('public.login')->with('data',$data);

其中模版 public/login 等同于 public.login ;传参可在 view第二参数 ,易可添加 with($data) 

    在模版输出时利用blade模版引擎

    输出方式⑴不转义: {

{$data}}  ⑵转义: {!!$data!!} 

   代码分割时可以将相同部分分离出来新建文件夹app.blade.php作为主模版框架使用,并且写入@yield('content'),@yield可以理解为作用域,在子模版先继承主模版@extend('app') ,然后@section('content')<h1>hello word</h1>@stop即可

     注:@section('***')  与 @stop  是一对标签;

文件:app.blade.php

    
Title @yield('content')

文件:hellp.blade.php

@extends('app')@section('content')

hello word

@stop

    if标签

@if($type == 1)
jack
@else
bob
@endif

    foreach标签

    @foreach($data as $value)
  • {
    {$value}}
  • @endforeach

     八、配置文件

'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', ''),            'unix_socket' => env('DB_SOCKET', ''),            'charset' => 'utf8mb4',            'collation' => 'utf8mb4_unicode_ci',            'prefix' => '',            'strict' => true,            'engine' => null,        ],

这里为什么要使用env()方法??

     首先考虑到版本控制,其次在共享代码时可以不让其他人查看

     git提交不会检查env文件,重要配置卸载.env文件里,当使用env方法时先判断env是否有设置,若为空取默认值(第二参数);

      九、Migrage

     在laravel中,migrage也是一个便利操作之一,migrage可方便管理数据库;

     在目录  /database/migrations/  下可看到laravel初始的实例文件,

     利用migrate生成数据库

php artisan make:migrate create_articles_table --create=articlesphp artisan migrate

     在这里可能会遇到一些问题:

    经百度后得知laravel 5.4 改变了默认的数据库字符集,现在utf8mb4包括存储emojis支持。如果你运行MySQL v5.7.7或者更高版本,则不需要做任何事情。当你试着在一些MariaDB或者一些老版本的的MySQL上运行 migrations 命令时,你可能会碰到下面这个错误

    我们可以在 AppServiceProvider.php 文件里的 boot 方法里设置一个默认值:

          完美!!!

        假如在数据操作失误时可以执行命令(可理解为撤销)

php artisan migrate:rollback

        若使用migrate给表新加一字段

        先创建migrate文件

php artisan make:migration add_intro_clumn_to_articles --table=articles

        然后添加字段   

string('intro'); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::table('articles', function (Blueprint $table) { // $table->dropColumn('intro'); }); }}

            注:若使用dropColumn 不正常可检查是否引入  doctrine/dbal

            安装方法:     composer require doctrine/dbal

 

转载于:https://my.oschina.net/sunYwp/blog/910414

你可能感兴趣的文章
注册与登录界面的美化
查看>>
win2003远程桌面不自动注销,自动锁定时间
查看>>
Shell脚本
查看>>
RPM包管理
查看>>
7个顶级心理寓言
查看>>
我的友情链接
查看>>
2.vi 和 vim 编辑器
查看>>
mdadm--RAID 5
查看>>
java异常设计
查看>>
服务器的几种时间同步
查看>>
我的友情链接
查看>>
WPF“动画序列”框架的初步研究与实现(附源码)
查看>>
校招求职面试连载(二)
查看>>
网络学习(三十一)操作系统无人值守自动安装之Windows XP
查看>>
handler 机制
查看>>
解决mysql无法导入本地文件的问题
查看>>
HBase 系统架构
查看>>
RichFace标签学习笔记
查看>>
iOS中block介绍(四)揭开神秘面纱(下)
查看>>
更改yum源为阿里云的yum源
查看>>