我想使用laravel将产品展示到相关类别 [英] I want to show product to related category using laravel

查看:43
本文介绍了我想使用laravel将产品展示到相关类别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试显示与该类别相关的产品.在我的菜单中,我有一个类别列表,如果我单击此类别,我想查看与此类别相关的产品.我只是在学习laravel可以帮助我..

I'm trying to show products related to the category. In my menu I have a list of categories if I click this category i want to see related products to this category. I'm just learning laravel can somebody help me out..

数据库

-category: ID, cate_name ,p_id
-products: has Category_id

类别模型

namespace App;
use Illuminate\Database\Eloquent\Model;
class category extends Model
{
    public $table = "category";
    public function childs()
    {
        return $this->hasMany('App\category','p_id');
    }
}

类别视图

         <div class="nav-panel__nav-links nav-links">
        <ul class="nav-links__list">
          @foreach(App\category::with('childs')- 
         >where('p_id',0)->get() as $firstmenu)
        <li class="nav-links__item  nav-links__item--has-submenu ">
        <a id="cate" class="nav-links__item-link" href="{{$firstmenu- 
         >cate_name}}">
        <div class="nav-links__item-body">{{$firstmenu->cate_name}}
        <svg class="nav-links__item-arrow" width="9px" height="6px">
        <use xlink:href="public/assets/images/sprite.svg#arrow-rounded-down- 
        9x6"></use>
        </svg>
            </div>
        </a>
        <div class="nav-links__submenu nav-links__submenu--type--megamenu 
         nav-links__submenu--size--nl">
        <!-- .megamenu -->
        <div class="megamenu ">
        <div class="megamenu__body">
        <div class="row">@foreach($firstmenu->childs as 
          $secondmenu)
        <div class="col-6">
        <ul class="megamenu__links megamenu__links--level--0">
        <li class="megamenu__item  megamenu__item--with-submenu "> <a 
         href="">{{$secondmenu->cate_name}}</a>
        <ul class="megamenu__links megamenu__links--level- 
     -1">@foreach($secondmenu->childs as $thirdmenu)
    <li class="megamenu__item"><a href="">{{$thirdmenu->cate_name}}</a>
    </li>@endforeach</ul>
    </li>
    </ul>
    </div>@endforeach</div>
    </div>
    </div>
    <!-- .megamenu / end -->
    </div>
    </li>@endforeach</ul>
       </div>

我怎么从这里走?

推荐答案

您需要更新类别模型

category.php

<?php
namespace App;
use Illuminate\Database\Eloquent\Model;

class category extends Model
{
    public $table = "category";
    public function products()
    {
        return $this->hasMany('App\product', 'ID', 'p_id');
    }
}

类别视图

<div class="nav-panel__nav-links nav-links">
    <ul class="nav-links__list">
        @foreach(App\category::with('products')->where('p_id',0)->first()->products as $firstmenu)
            <li class="nav-links__item  nav-links__item--has-submenu ">
                <a id="cate" class="nav-links__item-link" href="{{$firstmenu->cate_name}}">
                    <input type="hidden" name="cate"  value="{{$firstmenu->id}}">
                    <div  class="nav-links__item-body">
                        {{$firstmenu->cate_name}}
                        <svg class="nav-links__item-arrow" width="9px" height="6px">
                            <use xlink:href="public/assets/images/sprite.svg#arrow-rounded-down-9x6"></use>
                        </svg>
                    </div>
                </a>
            <li>
    </ul>
</div>

这篇关于我想使用laravel将产品展示到相关类别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆