使用 codeigniter 创建基于级别的动态菜单
Posted
技术标签:
【中文标题】使用 codeigniter 创建基于级别的动态菜单【英文标题】:create dynamic menu based on level with codeigniter 【发布时间】:2021-08-13 08:28:16 【问题描述】:我想基于 laravel 制作动态菜单。这是重要信息:
-
table_menu:
包含字段名称等和 varchar 类型的 level_id
table_level :
包含带有 int 类型的 ID 和菜单名称
我使用 codeigniter 和 sql
所以想法是,不是将数据一一插入到 table_menu(例如,如果我有 5 个菜单和 2 个级别,那么表格菜单上总共有 10 个菜单数据)。
所以我认为,最好的办法是我只需要在 table_menu 的字段 level_id 上插入 csv (level_id => 1(admin),4(user),5(etc)。这会给我 5菜单不管多少级。对吧?
但是问题如何?这有可能吗?
我试过这样:
$this->db->where('parent', true)->where_in('level_id', $this->session->userdata('level_id'))->get('table_menu')->result();
但它没有工作。谁能帮帮我?
【问题讨论】:
【参考方案1】:我终于明白了! 我阅读了很多关于 find_in_set sql 查询的内容,终于成功了。这是最终代码:
$this->db->query("SELECT * FROM table_menu where FIND_IN_SET( ".$this->session->userdata('level_id').", level_id) > 0")->result();
【讨论】:
以上是关于使用 codeigniter 创建基于级别的动态菜单的主要内容,如果未能解决你的问题,请参考以下文章