zoukankan      html  css  js  c++  java
  • laravel 小笔记

    1  refresh 的作用是重置数据库并重新运行所有迁移。(清空数据库所有表和记录,重新生成迁移)。

    php artisan migrate:refresh

    2   在表单提交的时候,失败会重新刷新页面,所有数据都会丢失,把 input 的 value 设置为 {{ old('name') }}   即可在验证失败的时候刷新页面数据保存还在。

    <input type="text" name="name" class="form-control" value="{{ old('name') }}">

    3   laravel的验证:

    存在性验证  'name' => 'required'      required 来验证用户名是否为空。

    长度验证   'name' => 'min:3|max:50'        min 和 max 来限制用户名所填写的最小长度和最大长度。

    格式验证    'email' => 'email'      只需简单的使用 email 便能够完成邮箱格式的验证。

    唯一性验证    'email' => 'unique:users'       我们还需要验证用户使用的注册邮箱是否已被它人使用,这时我们可以使用唯一性验证,这里是针对于数据表 users 做验证。

    密码匹配验证   'password' => 'confirmed'        如果我们需要确保用户在输入密码时,保证两次输入的密码一致。这时候则可以使用 confirmed 来进行密码匹配验证。

    4   laravel验证错误提示中文包安装,github地址:https://github.com/overtrue/laravel-lang

    composer require "overtrue/laravel-lang:~3.0"

     在config/app.php配置文件中修改 :    'locale' => 'zh-CN'

     
     
    5   通过控制器向视图携带个信息
    创建个session并使用flash方法携带一条信息,  success为会话的建,后面的内容为会话的值
    session()->flash('success', '欢迎,您将在这里开启一段新的旅程~');
     
    在试图通过
    session()->get(’键名‘)  来取出信息;
     
    dangerwarningsuccessinfo 这四个键名在 Bootstrap 分别具有不同样式展现效果,因此后面我们将使用这几个键名作为消息提示的专有设定。
    session()->flash('success', '欢迎,您将在这里开启一段新的旅程~');
    创建个文件存入以下代码,在需要的试图中include上,这样子,在控制器中flash带上信息,视图就能获取到信息。
    @foreach (['danger', 'warning', 'success', 'info'] as $msg) @if(session()->has($msg)) <div class="flash-message"> <p class="alert alert-{{ $msg }}"> {{ session()->get($msg) }} </p> </div> @endif @endforeach
     
     
    6.   可以用变量对验证进行存储,存储的值为提交的值,这样就不用$request->all() 在去获取用户输入的值了
    $userInfo = $this->validate($request,[
    'email' => 'required|email',
    'password' => 'required'
    ]);

    dd($userInfo);
    array:2 [
      "email" => "esaiting@outlook.com"
      "password" => "123456"
    ]
     
     7. 时间中文化显示:在 Laravel 中,时间戳 created_at 和 updated_at 作为模型属性被调用时,都会自动转换为 Carbon 对象,下图我们使用 Laravel 自带的 dd() 辅助函数验证一下: dd( $user->created_at )    显示结果为 date: " 2011-3-12  12:22:32.0000  " 
     
    Carbon 是 PHP 知名的 DateTime 操作扩展,Laravel 将其默认集成到了框架中。diffForHumans 是 Carbon 对象提供的方法,默认情况是英文的,如果要使用中文时间提示,则需要对 Carbon 进行本地化设置。对 Carbon 进行本地化的设置很简单,只在 AppServiceProvider 中调用 Carbon 的 setLocale 方法即可,AppServiceProvider 是框架的核心,在 Laravel 启动时,会最先加载该文件。
     
    app/Providers/AppServiceProvider.php:  public function boot() { // CarbonCarbon::setLocale('zh'); }   这样子,在要显示的地方就可以使用:
    $user->created_at->diffForHumans()  这样转化后的时间为中文格式 比如:2小时前
     
    8表单上传图片和文件
      为表单添加 enctype="multipart/form-data" 声明了。请记住,在图片或者文件上传时,为表单添加此句声明是必须的。那我们再次修改下:
      <form action="{{ route('users.update', $user->id) }}" method="POST"                      accept-charset="UTF-8"                      enctype="multipart/form-data">
     
  • 相关阅读:
    5. Longest Palindromic Substring
    56. Merge Intervals
    386. Lexicographical Numbers
    42. Trapping Rain Water
    *[topcoder]BracketExpressions
    [codility]CountDiv
    *[codility]MinAvgTwoSlice
    *[codility]MissingInteger
    [mock]7月25日
    网络广告术语
  • 原文地址:https://www.cnblogs.com/muwu/p/8971456.html
Copyright © 2011-2022 走看看