Maison >développement back-end >tutoriel php >À propos de la méthode d'implémentation de la classification infinie dans Laravel 5.4

À propos de la méthode d'implémentation de la classification infinie dans Laravel 5.4

不言
不言original
2018-06-13 13:46:511276parcourir

Cet article présente principalement la méthode de réalisation d'une classification illimitée dans Laravel 5.4. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer.

Je l'ai rencontré au travail récemment. . Une exigence est d'implémenter une classification illimitée dans Laravel 5.4, mais j'ai trouvé qu'il y a moins d'informations à ce sujet en ligne, je ne peux donc l'implémenter que moi-même. L'article suivant vous présente principalement l'implémentation d'une classification illimitée dans Laravel 5.4. si vous en avez besoin, vous pouvez vous référer aux exemples de méthodes. Jetons un coup d'œil ci-dessous.

Avant-propos

Cet article vous présente principalement le contenu pertinent sur la mise en œuvre de la classification illimitée dans Laravel 5.4, et le partage pour ceux qui J'en ai besoin les amis, veuillez vous y référer pour référence. Je ne dirai pas grand-chose ci-dessous, jetons un coup d'œil à l'introduction détaillée.

La méthode est la suivante :

1. Créer un tableau

php artisan make:migration create_category_table --create=category

Trouvez votre fichier de migration sous base de données/migrations/

Build :

<?php
 
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
 
class CreateCategoryTable extends Migration
{
 /**
 * Run the migrations.
 *
 * @return void
 */
 public function up()
 {
 Schema::create(&#39;categorys&#39;, function (Blueprint $table) {
  $table->increments(&#39;id&#39;);
  $table->integer(&#39;parent_id&#39;);
  $table->string(&#39;code&#39;);
  $table->string(&#39;name&#39;);
  $table->string(&#39;path&#39;);
  $table->timestamps();
 });
 }
 
 /**
 * Reverse the migrations.
 *
 * @return void
 */
 public function down()
 {
 Schema::dropIfExists(&#39;categorys&#39;);
 }
}
php artisan migrate

2. Créer un modèle dans app/Category.php

php artisan make: model Category -m

<?php
 
namespace App;
 
use Illuminate\Database\Eloquent\Model;
 
class Category extends Model
{
 public function childCategory() {
 return $this->hasMany(&#39;App\Category&#39;, &#39;parent_id&#39;, &#39;id&#39;);
 }
 
 public function allChildrenCategorys()
 {
 return $this->childCategory()->with(&#39;allChildrenCategorys&#39;);
 }
}

3. Appelez

$categorys = App/Category::with(&#39;allChildrenCategorys&#39;)->first();

ou

$categorys->allChildrenCategorys;

ou

$categorys->allChildrenCategorys->first()->allChildrenCategorys;

Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'apprentissage de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

À propos de la méthode d'implémentation de réécriture de l'URL personnalisée de routage des ressources dans Laravel

À propos des principes de mise en œuvre de la file d'attente Laravel et comment résoudre les problèmes

À propos de l'utilisation des cookies dans Laravel5

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn