zoukankan      html  css  js  c++  java
  • 完成一个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 = AppCate::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)

  • 相关阅读:
    taglib
    ThinkPHP魔术方法
    给图片添加文字
    公益筹模板
    清空(数据库+文件夹)
    php——文件下载
    查询上一个tp语句
    安装wampserver 2.5的时候出现丢失MSVCR100.dll的解决办法。
    ThinkPHP3.2.3 安装教程
    java基础——File类的基本用法
  • 原文地址:https://www.cnblogs.com/qjykn/p/10304562.html
Copyright © 2011-2022 走看看