laravel7学习之无限级分类的最新实现方法_php实例

来源:脚本之家  责任编辑:小易  

这是一个头像上传2113的例子//前台视图://在head里加上5261_tokenmeta name=;_token; content=;{{ csrf_token() }};/;<pre t="code" l="php">$.ajax({ url:;head_portrait;, data:{src:src}, type:;GET;, headers:{;X-CSRF-TOKEN;:$(;meta[name=;_token;];).attr(;content;)}, success:function(data){ //console.log(data); id.text(;上传4102头像成功1653;); console.log(data);//后台控制器://个人资料头像保存 public function head_portrait(Request $request){ $uid = session()-;get(;huser_id;); $res = DB::table(;userinfo;)-;where(;uid;,$uid)-;count(); if($res amp;amp; !empty($request-;input(;src;))){ $ress = DB::table(;userinfo;)-;where(;uid;,$uid)-;update([;uid;=;$uid,;head_portrait;=;$request-;input(;src;)]); }else{ $ress = DB::table(;userinfo;)-;where(;uid;,$uid)-;insert([;uid;=;$uid,;head_portrait;=;$request-;input(;src;)]); } if($ress){echo 1;}else{echo 0;} } }, error:function(){ id.text(;上传头像失败;); }, async:false })www.zgxue.com防采集请勿采集本网。

写在前面的话

这个缓存问题我这边也有。 可以考虑用前端管理工具。

无限级分类,基本在所有的网站都有涉及,所以是必须要掌握的知识点,在网上看很多资料文档,要么不细致,要么根本不对,要么达不到预想的目标,其实实现的思路和方法非常简单,今天我们一起来实现一下。

首先在你的centos/ubuntu中安装composer, 参考命令: curl -sS http://install.phpcomposer.com/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer2. 其次开始安装Laravel: composer global require "laravel/installer

创建模型控制器数据迁移文件

PDO扩展是没有问题的,根据你的错误日志显示是为“myname这个数据库是找不到的”,建议检查一下你的数据库名字,dbname=你的数据库的名字!希望对你有帮助!

PHP 团队宣布 PHP 7.0.0 正式发布了。这一版本的发布标志着 PHP 7 新系列开始了。 PHP 7.0.0 带来了新版本的 Zend 引擎、各方面的提升以及新特性,比如: 性能提升:PHP 7 是 PHP 5.6 的将近两倍 内存的使用显著降低 抽象语法树 一致的 64 位支

这里直接使用artisan命令进行创建

通过 Laravel 安装器安装 1 先下载 Laravel 安装器 PHAR 文件。为了方便起见,将该文件重命名为 laravel 并移动至 /usr/local/bin目录。完成后,只需在你指定的目录下输入简单的 laravel new 命令即可创建一个全新的Laravel安装。例如,laravel

# -a 其实就是all,创建包含模型,控制器(资源),数据迁移文件(工厂模型、seed)php artisan make:model -a Category

运行这条命令,就可以创建好资源控制器。

修改数据迁移文件

首先修改数据迁移文件xxx_create_categories_table.

打开文件,修改里面的up方法,添加相应字段。

Schema::create('categories', function (Blueprint $table) { $table->id(); $table->string('title', 100)->comment('分类名称'); $table->string('name', 100)->comment('分类标识'); $table->string('description', 255)->nullable()->comment('分类描述'); $table->integer('pid')->default(0)->comment('分类id'); $table->integer('level')->default(1)->comment('分类层级'); $table->integer('sort')->default(0)->comment('排序'); $table->integer('status')->default(1)->comment('状态:0-禁用,1-正常'); $table->timestamps(); });

执行迁移命令

php artisan migrate

嵌套模型实现读取

//App\Models\Category.php public function categories() { return $this->hasMany(self::class, 'pid', 'id')->with('categories'); }

控制器调用

//app\Http\controllers\CategooryController.php# use模型use App\Models\Category; public function index() { $categories = Category::with('categories')->where('pid', 0)->get(); return view('category.index', compact('categories')); }

添加路由

在 routes/web.php,我们添加以下内容:

Route::get('category', 'CategoryController@index');

blade模版渲染

这里使用递归渲染。

在 resources/views/categories.blade.php 文件:

<table class="table table-borderless table-data3"> <thead> <tr> <th>编号</th> <th>分类名称</th> <th>分类标识</th> <th>分类描述</th> <th>创建时间</th> <th>状态</th> <th>操作</th> </tr> </thead> <tbody> @foreach ($categories as $category) <tr class="tr-shadow"> <td>{{ $category->id }}</td> <td>{{ $category->title }}</td> <td> <span class="block-email">{{ $category->name }}</span> </td> <td class="desc">{{ $category->description }}</td> <td>{{ $category->created_at }}</td> <td> <span class="status--process">{{ $category->status }}</span> </td> <td></td> </tr> <tr class="spacer"></tr> @foreach ($category->categories as $childCategory) @include('category.child_category', ['child_category' => $childCategory]) @endforeach @endforeach </tbody> </table>

递归部分加载自身模版child_category.blade.php

<tr class="tr-shadow"> <td>{{ $child_category->id }}</td> <td>|{{ str_repeat('--',$child_category->level-1) }} {{ $child_category->title }}</td> <td> <span class="block-email">{{ $child_category->name }}</span> </td> <td class="desc">{{ $child_category->description }}</td> <td>{{ $child_category->created_at }}</td> <td> <span class="status--process">{{ $child_category->status }}</span> </td> <td></td></tr><tr class="spacer"></tr>@if ($child_category->categories)@foreach ($child_category->categories as $childCategory)@include('category.child_category', ['child_category' => $childCategory])@endforeach@endif

最后看一下效果

总结

到此这篇关于laravel7学习之无限级分类最新实现方法的文章就介绍到这了,更多相关laravel7无限级分类实现内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网! 您可能感兴趣的文章:laravel 5.4中实现无限级分类的方法示例laravel 框架实现无限级分类的方法示例

通过 Laravel 安装器2113安装1先下载 Laravel 安装器 PHAR 文件。为了方便5261起见,4102将该文件重命名为 laravel 并移动至 /usr/local/bin目录。完成后1653,只需在你指定的目录下输入简单的 laravel new 命令即可创建一个全新的Laravel安装。例如,laravel new blog 将创建一个名为 blog 的目录,该目录中包含了一份全新的Laravel安装以及所需的依赖项。这种安装方法比通过 Composer 安装要快许多通过 Composer create-project 命令安装Lar1还可以通过在命令行执行 Composer create-project 命令来安装Laravel:composer create-project laravel/laravel --prefer-dist通过下载Laravel包安装1Composer安装完成后,下载最新版Laravel框架,把它解压缩到你服务器上的一个目录中。然后在Laravel应用的根目录下运行命令行命令 php composer.phar install (或者 composer install )来安装所有的框架依赖包。在此过程中,为了成功完成安装,你需要在服务器上安装好Git。当Laravel框架安装好后,你可以使用命令行命令 php composer.phar update 来更新框架。END服务器环境要求1Laravel框架有一些系统要求:PHP最低版本: 5.3.7MCrypt PHP扩展从PHP 5.5版本开始,针对某些操作系统的安装包需要你自己手工安装PHP的JSON扩展模块。如果你使用的是Ubuntu,可以通过, apt-get install php5-json 命令直接安装。配置Laravel框架几乎无需配置就可立即使用。你可以自由地快速开始开发。然而,你也许希望先查看下app/config/app.php 配置文件和相关的文档说明。它包含了一些你也许要修改的配置选项,如 时区 和 地区 等。权限设置Laravel框架有一个目录需要额外设置权限: 需要为 app/storage 目录下的文件设置写权限。路径设置一些框架目录路径是可以设置的。如果需要改变这些目录的位置,可以查看 bootstrap/paths.php 文件中的设置。Laravel框架通过设置 public/.htaccess 文件去除链接中的index.php。 如果你你的服务器使用的是Apache,请开启mod_rewrite 模块。如果框架附带的 .htaccess 文件在你的Apache环境中不起作用,请尝试下面这个版本:内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • php 将逗号、空格、回车分隔的字符串转换为数组的函数
  • php传值方式和ajax的验证功能
  • php页面,mysql数据库转utf-8乱码,utf-8编码问题总结
  • php实现cc攻击防御和防止快速刷新页面示例
  • 为百度ue编辑器上传图片添加水印功能
  • laravel重写用户登录简单示例
  • php开发apache服务器配置
  • 浅谈laravel post,put,patch 路由的区别
  • thinkphp项目如何自定义微信分享描述内容
  • thinkphp3.1.x修改成功与失败跳转页面的方法
  • laravel 在win7怎么安装
  • laravel5.7页面多个form,用jquery ajax方法提交,...
  • laravel 4.2支持 php7吗
  • centos7.2+nginx1.6+php5.7 laravel框架。loadrunn...
  • centos7 nginx php7 laravel 环境下的php项目中css...
  • 如何在 CentOS 7 / Ubuntu 15.04 上安装 PHP 框架 ...
  • PHP7 PDO创建数据失败SQLSTATE[HY000] [1049] Unkn...
  • 配置laravel 需要apache什么版本
  • 想通过Laravel框架使用Redis,系统是Windows7,怎...
  • 在centos7.2给laravel5.5目录权限不起作用
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全php基础php技巧php实例php文摘php模板首页php编程laravel 5.4中实现无限级分类的方法示例laravel 框架实现无限级分类的方法示例php 将逗号、空格、回车分隔的字符串转换为数组的函数php传值方式和ajax的验证功能php页面,mysql数据库转utf-8乱码,utf-8编码问题总结php实现cc攻击防御和防止快速刷新页面示例为百度ue编辑器上传图片添加水印功能laravel重写用户登录简单示例php开发apache服务器配置浅谈laravel post,put,patch 路由的区别thinkphp项目如何自定义微信分享描述内容thinkphp3.1.x修改成功与失败跳转页面的方法php获取数组长度的方法(有实例)微信公众平台实现获取用户openid教你如何使用php session使用php生成二维码的两种方法(带php发送get、post请求的6种方法简php中把stdclass object转array的微信公众平台网页授权获取用户基laravel框架数据库curd操作、连贯php删除数组中空值的方法介绍php错误allowed memory size of php程序员简单的开展服务治理架构操作详解php支付系统设计与典型案例分享详解php中serialize()和unserialize()函数yii framework框架使用yiic快速创建yii应使用php实现从身份证中提取生日yii多表联合查询操作详解php实现微信扫码支付php7使用odbc连接sql server2008 r2数据库yii框架用户登录session丢失问题解决方法php spl标准库之splfixedarray使用实例
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved