laravel学习笔记3--高级
一、artisan
1、基本使用:
1.1、查看基本命令:
php artisan
1.2、查看具体命名的使用:
php artisan help migrate
1.3、创建控制器:
php artisan make:controller TestController
1.4、创建模型:
php artisan make:model Test
1.5、创建中间件:
php artisan make:middleware Test
二、用户验证:
1、生成Auth所需文件:
php artisan make:auth
执行成功在路由中增加如下代码,在view层中增加如下文件:
访问/home路径,会跳转到用户登录页面:
2、数据迁移:
php artisan migrate
如果出现如下报错:
则需要添加如下代码:
Schema::defaultStringLength();
数据迁移执行成功,数据表就新增了三张表:
备注:数据迁移执行的创建数据表数据来源:
3、注册登录
执行成功数据迁移后,就可以在页面注册登录用户
注册成功,数据表就新增一条用户信息
三、数据迁移
1、新建一张表的迁移文件
php artisan make:migration create_students_table --create=students
2、生成模型的同时生成迁移文件
php artisan make:model Article -m // 添加-m就会同时生成迁移文件
3、使用迁移文件创建表:
php artisan migrate
四、数据填充
1、创建一个填充文件,并完善填充文件
php artisan make:seeder StudentTableSeeder
生成的填充文件:
在run方法中使用查询构造器添加数据:
2、执行单个填充文件
php artisan db:seed --class=StudentTableSeeder
如果出现如下错误:
则执行composer命令:
composer dump-autoload
填充成功,数据表多了两条数据:
3、批量执行填充文件
在DatabaseSeeder的run方法上添加,有其他表需要填充数据时可以添加多条:
$this->call(StudentTableSeeder::class);
然后在命令行中执行,即可实现数据填充:
php artisan db:seed
五、文件上传:
1、在配置文件中新增文件上传目录:
'uploads' => [
'driver' => 'local',
'root' => storage_path('app/uploads'),
],
2、上传方法:
<?php
namespace App\Http\Controllers; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage; class StudentController extends Controller
{
public function upload(Request $request)
{
if ($request->isMethod('POST')) {
$file = $request->file('file');
// 文件是否上传成功
if ($file->isValid()) {
// 原文件名
$originalName = $file->getClientOriginalName();
// 扩展名
$ext = $file->getClientOriginalExtension();
// MimeType
$type = $file->getClientMimeType();
// 临时绝对路径
$realPath = $file->getRealPath(); $fileName = date('Y-m-d-H-i-s') . '-' . uniqid() . '.' . $ext; $bool = Storage::disk('uploads')->put($fileName, file_get_contents($realPath));
dd($bool);
}
}
return view('student.upload');
}
}
六、邮件发送
1、配置
laravel学习笔记3--高级的更多相关文章
- Hadoop学习笔记(7) ——高级编程
Hadoop学习笔记(7) ——高级编程 从前面的学习中,我们了解到了MapReduce整个过程需要经过以下几个步骤: 1.输入(input):将输入数据分成一个个split,并将split进一步拆成 ...
- Laravel学习笔记(三)--在CentOS上配置Laravel
在Laravel框架上开发了几天,不得不说,确实比较优雅,处理问题逻辑比较清楚. 今天打算在CentOS 7上配置一个Laravel,之前都是在本机上开发,打算实际配置一下. 1)系统 ...
- Laravel学习笔记之Session源码解析(上)
说明:本文主要通过学习Laravel的session源码学习Laravel是如何设计session的,将自己的学习心得分享出来,希望对别人有所帮助.Laravel在web middleware中定义了 ...
- matlab学习笔记9 高级绘图命令_2 图形的高级控制_视点控制和图形旋转_色图和颜色映像_光照和着色
一起来学matlab-matlab学习笔记9 高级绘图命令_2 图形的高级控制_视点控制和图形旋转_色图和颜色映像_光照和着色 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 < ...
- matlab学习笔记9 高级绘图命令_1 图形对象_根对象,轴对象,用户控制对象,用户菜单对象
一起来学matlab-matlab学习笔记9 高级绘图命令_1 图形对象_根对象,轴对象,用户控制对象,用户菜单对象 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matl ...
- Laravel学习笔记之PHP反射(Reflection) (上)
Laravel学习笔记之PHP反射(Reflection) (上) laravel php reflect 2.1k 次阅读 · 读完需要 80 分钟 3 说明:Laravel中经常使用PHP的反 ...
- laravel 学习笔记 — 神奇的服务容器
2015-05-05 14:24 来自于分类 笔记 Laravel PHP开发 竟然有人认为我是抄 Laravel 学院的,心塞.世界观已崩塌. 容器,字面上理解就是装东西的东西.常见的变量.对象属 ...
- Laravel 学习笔记 —— 神奇的服务容器 [转]
容器,字面上理解就是装东西的东西.常见的变量.对象属性等都可以算是容器.一个容器能够装什么,全部取决于你对该容器的定义.当然,有这样一种容器,它存放的不是文本.数值,而是对象.对象的描述(类.接口)或 ...
- 慕客网laravel学习笔记
session中set方法使用 Session::set('user.username.age','18')嵌套使用得出$user = ['username'=>['age'=>18]]; ...
- laravel 学习笔记 —— 神奇的服务容器
转载自:https://www.insp.top/learn-laravel-container 容器,字面上理解就是装东西的东西.常见的变量.对象属性等都可以算是容器.一个容器能够装什么,全部取决于 ...
随机推荐
- Ruby 动态生成变量
创建: 2018/03/21 更新: 2018/03/22 把标题ruby首字母大写 方法一: eval将字符串作为代码执行, 故写在里边 eval("@#{view_name.to_s} ...
- bzoj 3629: [JLOI2014]聪明的燕姿【线性筛+dfs】
数论+爆搜 详见这位大佬https://blog.csdn.net/eolv99/article/details/39644419 #include<iostream> #include& ...
- [App Store Connect帮助]八、维护您的 App(3)将 App 恢复至 App Store
如果您已将 App 从 App Store 中移除,之后创建了该 App 的一个新版本,那么即使新版本被“App 审核”批准,App 状态也仍会是“被开发者下架”.若要发布新版本,您必须首先将其恢复至 ...
- akka设计模式系列-akka在秒杀场景的应用
本博客讨论一下akka在秒杀场景下的应用,提出自己的见解,只做抛砖引玉,大神勿喷.秒杀活动涉及到前中后台各个阶段,为了说明问题,我们简化场景,只研究akka在后台如何处理秒杀业务. 秒杀活动 所谓的秒 ...
- js 几秒之后就不断的执行
function url() { $.ajax({ url: "AA.ashx", data: { ID: "gggg ...
- spring 获取配置文件的值
Spring 获取配置文件的值 package com.hafiz.www.util; import org.slf4j.Logger; import org.slf4j.LoggerFactory; ...
- 【洛谷2304_LOJ2134】[NOI2015]小园丁与老司机(动态规划_网络流)
题目: 洛谷 2304 LOJ 2134 (LOJ 上每个测试点有部分分) 写了快一天 -- 好菜啊 分析: 毒瘤二合一题 -- 注意本题(及本文)使用 \(x\) 向右,\(y\) 向上的「数学坐标 ...
- shell脚本从入门到精通
阿里云大学 shell脚本从入门到精通 第1 章 : shell脚本编程-变量-算术表达式-判断语句-if分支语句 第2 章 : case-for-While-双括号-循环嵌套-break-conti ...
- 题解报告:hdu 1263 水果
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1263 Problem Description 夏天来了~~好开心啊,呵呵,好多好多水果~~ Joe经营 ...
- C#中的list的System.Predicate<in T>和System.Comparison<in T>的应用
public class Data { ; ; ; ; public Data() { count++; ma = count; } } //一句话删除满足要求的集合 Asm.RemoveAll((D ...