首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态菜单栏

动态菜单栏
EN

Stack Overflow用户
提问于 2014-08-08 01:10:26
回答 1查看 9.2K关注 0票数 1

我从laravel开始,并与bootstrap进行了集成。我想做一个菜单栏来获取年份的信息,菜单就是这样来查看的

代码语言:javascript
复制
<li class="dropdown-submenu">
    <a tabindex="-1" href="#">2007</a>
    <ul class="dropdown-menu">
        <li><a tabindex="-1" href="<?php echo url('/convenios/2007/registrar', $parameters = array(), $secure = null); ?>">Registrar</a></li>
        <li><a href="#">Consultar</a></li>
    </ul>
</li>

我在一个名为base.blade.php的视图上制作了这个,有没有更好的方法来制作菜单,或者我用正确的方式制作了它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-16 05:06:11

menus

id - parent_id - title - url - order - created_at - updated_at

Make Menu 模型

代码语言:javascript
复制
class Menu extends Model
{

  public $timestamps = false;

  protected $table = 'menus';

  protected $fillable = array('parent_id','title','url','order');

  public function parent()
  {
    return $this->belongsTo('App\Menu', 'parent_id');
  }

  public function children()
  {
    return $this->hasMany('App\Menu', 'parent_id');
  }
}

视图中的

代码语言:javascript
复制
@foreach(App\Menu::orderBy('order','asc')->get() as $menuItem)

  @if( $menuItem->parent_id == 0 )
     <li {{ $menuItem->url ? '' : "class=dropdown" }}>
     <a href="{{ $menuItem->children->isEmpty() ? $menuItem->url : "#" }}"{{ $menuItem->children->isEmpty() ? '' : "class=dropdown-toggle data-toggle=dropdown role=button aria-expanded=false" }}>
        {{ $menuItem->title }}
     </a>
  @endif

  @if( ! $menuItem->children->isEmpty() )
    <ul class="dropdown-menu" role="menu">
      @foreach($menuItem->children as $subMenuItem)
          <li><a href="{{ $subMenuItem->url }}">{{ $subMenuItem->title }}</a></li>
      @endforeach
    </ul>
  @endif
  </li> 

@endforeach

您可以随心所欲地制作控制器

通过这种方式,我花了一整天的时间试图获得这个工作代码,当我完成后,我决定搜索任何提出这个问题的人

玩得开心:)

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25188355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档