完成一个Laravel项目的过程
1.分析项目,找出项目的元素并进行建模(navicat 该工具还可以到处sql语句) 建立关系
2.安装Laravel(使用composer来安装,如果没有的话先安装composer)
3.配置虚拟主机(若不支持将网站根目录指定到public目录下则不要使用)
4.创建数据库设置字符集
5.配置Laravel的数据库连接信息
6.使用‘artisan’命令进行模型创建
php artisan make:model User -m
-m会帮我们创建数据库迁移文件
7.创建表结构,若果有关联表的话应该使用‘php artisan make:migration create_post_tag_table’创建中间表
8. 8.1运行命令来生成数据表
php artisan migrate
8.2 填充数据
1.创建填充数据表的文件
php artisan make:Seeder UserSeeder
2.在UserSeeder的run方法中填充数据
public function run()
{
//
$arr = [];
for($i=0;$i<100;$i++){
$tmp = [];
$tmp['username'] = str_random(20);
$tmp['email'] = str_random(8).'@163.com';
$tmp['password'] = Hash::make('123456');
$tmp['profile'] = '/Uploads/20190226/1551184032674823.jpg';
$tmp['intro'] = str_random(100);
$tmp['created_at'] = date('Y-m-d H:i:s');
$tmp['updated_at'] = date('Y-m-d H:i:s');
$arr[] = $tmp;
}
DB::table('users')->insert($arr);
}
3.在DatabaseSeeder的run方法中调用UserSeeder类
$this->call(UserSeeder::class);
4.执行命令填充数据
php artisan db:seed
8.3 若修改了迁移文件,需要重新执行迁移文件时使用如下命令(该命令还可以回滚并重新运行迁移,这在需要完全重建数据库时很有用):
php artisan migrate:refresh --seed
9.创建路由规则访问网站后台
php artisan make:controller AdminCtroller --plain
(--plain 不创建方法)
10.在方法中解析模板(尽量做到前后台的一个划分)
11.将目标模板的源代码复制到指定的模板中
12.将模板所需要的js,css,图片内容复制到项目的public目录下,存放至一个目录中(admins文件夹的名字不能跟路由名称重名)
13.在模板中进行路径调整,建议使用asset函数进行路径调整
14.调整404页面
15.可以使用工具格式化html代码
16.资源控制器
17.sublime 安装 laravel artisan 插件
18.将代码回推 shift+tab,后推tab
19.隐式控制器与resful控制器区别:
(1)resful 1=7
隐式 1=n
(2)resful 会自动帮我们生成方法名 更简洁一些,隐式控制器不会
(3)方法名 隐式控制器 需要在方法名前面添加 请求方法(get,post)
20.分类的规律
如果是顶级分类 则 pid 和 path都是0
如果不是顶级分类 则pid 应该是父级分类的id,path应该是(父级分类的path,父级分类的id)
21. ErrorException in 79833491d30ddd73c0a46bc7f5a36eae line 31: 这样的问题 解决方案
sublime 快捷键 ctrl+p找文件 ctrl+g 定位行数
21.1 自定义函数
例如:
自定义函数的路径为:app/Common/function.php (路径在app下课自定义位置)
1.在composer.json中引用(autoload后): "files":[
"app/Common/function.php"
]
2.执行命令: composer dump-auto
3.书写自定义方法
<?php /**
*通过分类id获取分类名称
*/
function getCateNameByCateId($id)
{
if($id == 0){
return '顶级分类';
}
$cate = \App\Cate::find($id);
if(empty($cate)){
return '无';
}else{
return $cate->name;
}
}
?>
4.调用
{{getCateNameByCateId($cate->pid)}}
也可以在controller中调用

22. 方法伪造
<form action="/foo/bar" method="POST">
<input type="hidden" name="_method" value="PUT">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
</form>
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
部分功能代码:
1. 参数是否为空的条件查询

2. with('info','操作成功') 提示信息


3. 分页(带form表单提交信息,在controller中返回request)

4. 删除用户信息(包括删除头像)

17. 在sublime中安装laravel artisan 插件
按下Ctrl+Shift+P调出命令面板 ->install->laravel5
18. 将代码回推 shift+tab
19. 隐式控制器和resful的区别
1)resful 1=7
隐式 1=n
2)resful 会自动帮我们生成方法名 更加简洁一些。隐式控制器则不会
3)方法名 隐式控制器 需要在方法名前面添加 请求方式(get,post)
20. 博客系统分类的规律
如果是顶级分类 则 pid 和path都是0
如果不是顶级分类 则pid应该是父级分类的id,path应该是父级分类的path,加符集分类的id(如:0,1,4)
完成一个Laravel项目的过程的更多相关文章
- 【简书】在阿里云自带的CentOS + LAMP环境下部署一个Laravel项目
在阿里云自带的CentOS + LAMP环境下部署一个Laravel项目 作者 DonnieZero 关注 2017.07.29 22:02* 字数 2218 阅读 5556评论 3喜欢 1赞赏 1 ...
- 创建一个 Laravel 项目
创建一个 Laravel 项目,首先需要安装 Composer ,如果没有安装的参考 https://docs.phpcomposer.com/00-intro.html 一.安装 Laravel 安 ...
- 构建你人生里的第一个 Laravel 项目
安装 Laravel 安装器 composer global require "laravel/installer" 创建项目 laravel new links 检查是否安装成功 ...
- 一步一步带你构建第一个 Laravel 项目
参考链接:https://laravel-news.com/your-first-laravel-application 简介 按照以下的步骤,你会创建一个简易的链接分享网站. 安装 Laravel ...
- 创建一个vue项目的过程
创建一个vue项目: 1.首先从UI手上拿到PSD设计图,然后看设计搞的内容,需要做个大概的页面布局 2.做vue之前不许安装node,因为做vue项目要和node结合使用 3.然后安装vue脚手架: ...
- 使用composer命令创建laravel项目命令详解
composer命令创建laravel项目的命令是: composer create-project --prefer-dist laravel/laravel blog "5.2.*&qu ...
- 安装配置开源的laravel项目到本地环境
前言 从https://github.com 上down了一个laravel项目安装到本地环境的时候,其中遇到一些问题,这里梳理并记录下整个流程. git上下载项目代码,部署laravel项目的时候会 ...
- legend3---Homestead中Laravel项目502 Bad Gateway
legend3---Homestead中Laravel项目502 Bad Gateway 一.总结 一句话总结: 用查看错误日志的方法解决错误:(/var/log/nginx/.log) 1.home ...
- 推荐一个 Laravel admin 后台管理插件
如何优雅的写代码,我想是每位程序员的心声.自从15年初第一次接触 Laravel 4.2 开始,我就迷上使用 Laravel 框架了.我一直都想找个时间好好写写有关 Laravel 的使用文章,由浅入 ...
随机推荐
- HTML 理解标签 - meta
meta标签 , 常用的有以下几个属性: 1. name : 比较常见的一些属性 author: 就是这个文档的作者名称,可以用自由的格式去定义 description: 包括一个关于页面内容的缩略而 ...
- Ubuntu 16.04将左侧面板置于底部
ctrl+alt+t打开终端,输入: gsettings set com.canonical.Unity.Launcher launcher-position Bottom 有Bottom和Left两 ...
- k8s nodeport下访问请求未被分发到所有node的排错(转)
原文 https://www.myf5.net/post/2343.htm 现象: 从内部某个pod的容器里直接访问service的cluster地址,请求可以被正常转发到各个node上的pod里 但 ...
- 通过 phpmyadmin getshell
通过 phpmyadmin getshell general_log默认为关闭的,root权限开启后,general_log_file会保存所有的查询语句 可以开启general_log,然后设置g ...
- 数据泵导出报ORA-01555 ORA-22924
最近对某数据库执行数据泵导出操作时碰到如下错误:Processing object type DATABASE_EXPORT/SCHEMA/JOBProcessing object type DATA ...
- 转:VB.NET Office操作之Word
在这里给出了一个Word操作的类,该类具备了对word 文档操作的基本功能,包括word 文档的新建,打开,保存,另存,插入图片,插入表格,插入文字,读取文字,定位光标位置,移动光标,移动到指定页等等 ...
- LayaAir疑难杂症之二:字符输入限制不生效(多个限制条件该如何赋值给restrict)
问题描述 采用LayaAir进行开发,在使用TextInput时,对restrict属性进行赋值,使该输入框只允许输入中英文.数字,restrict = “[\u4E00-\u9FA5A-Za-z ...
- C语言博客作业4--数组
C语言博客作业4--数组 1.本章学习总结 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里提出你不 ...
- Google推出了Python最牛逼的编辑器
环境配置对于大多数人来说都是拦路虎,我们小白往往不知道: 怎么正确的安装 不知道选择什么 怎么安装常用的第三方库 ... Google推出了一个在线的网站 https://colab.research ...
- Oracle表空间不足;查询表空间使用率(unable to extend lob segment SYS_LOB0000076749C00006$$ by 8192 in tablespace USERS)
查询表空间对应地址 *),) total_space from dba_data_files order by tablespace_name; //方案一:修改表空间大小(32000可改为想要的数值 ...