完成一个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中调用

完成一个Laravel项目的过程

22. 方法伪造
<form action="/foo/bar" method="POST">
<input type="hidden" name="_method" value="PUT">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
</form>

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

部分功能代码:

1. 参数是否为空的条件查询

完成一个Laravel项目的过程

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

完成一个Laravel项目的过程

完成一个Laravel项目的过程

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

完成一个Laravel项目的过程

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

完成一个Laravel项目的过程

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)

上一篇:sqlite 去除换行符


下一篇:Passing the Message 单调栈两次