Layui和Django实现后台布局-创新互联
                                            本文在介绍关于Layui和Django实现后台布局的基础上,重点探讨了其具体步骤,步骤简单易上手操作,文章内容步步紧凑,希望大家根据这篇文章可以有所收获。

Layui后台布局:
一、后台布局之顶边栏
代码中橙色背景的一行为Django中传入的当前登录用户的用户名。
最终效果如下:

二、后台布局之侧边栏
侧边栏由于需要动态加载节点和子节点,所以需要先在Django中建立节点和子节点的model,model代码如下:
# 节点类
class NavigationProfile(models.Model):
    name=models.CharField(max_length=20,verbose_name='节点名称')
    url=models.CharField(max_length=50,verbose_name='链接地址')
    iconCls=models.CharField(max_length=50,verbose_name='图标icon')
    class Meta:
        verbose_name='节点名称'
        verbose_name_plural=verbose_name
    def __str__(self):
        return self.name
# 子节点类
class NavigationSubProfile(models.Model):
    name=models.CharField(max_length=20,verbose_name='子节点名称')
    url=models.CharField(max_length=50,verbose_name='链接地址')
    iconCls=models.CharField(max_length=50,verbose_name='图标icon')
    parent=models.ForeignKey(NavigationProfile,on_delete=models.CASCADE,verbose_name='父节点')
    class Meta:
        verbose_name='子节点名称'
        verbose_name_plural=verbose_name
    def __str__(self):
        return self.name在Django views中代码如下:
def open_index(request):
    if request.user.is_authenticated == False:
        return HttpResponseRedirect('/account/login/')
    else:
        navigation = NavigationProfile.objects.all()
        dict = []
        for nav in navigation:
            dic = {}
            id = nav.id
            dic['id'] = nav.id
            dic['text'] = nav.name
            dic['url'] = nav.url
            dic['iconCls'] = nav.iconCls
            dic['nid'] = 0
            sub_navigation = NavigationSubProfile.objects.filter(parent_id=id)
            sub_dict = []
            for sub_nav in sub_navigation:
                sub_dic = {}
                sub_dic['id'] = sub_nav.id
                sub_dic['text'] = sub_nav.name
                sub_dic['url'] = sub_nav.url
                sub_dic['iconCls'] = sub_nav.iconCls
                sub_dic['nid'] = sub_nav.parent_id
                sub_dict.append(sub_dic)
            dic["children"] = sub_dict
            dict.append(dic)30         return render(request,'index.html',{'dict':dict})Django urls代码如下:
 urlpatterns = [
     path('get-navigationProfile/',views.get_navigationProfile,name='get_navigationProfile'),
 ]Html侧边栏代码如下:
{% for dic in dict %}
- {{ dic.text }}{% endfor %}
{% for child in dic.children %}
- {{ child.text }}{% endfor %}
最终效果图

上述就是小编为大家分享的Layui和Django实现后台布局的方法了,如果您也有类似的疑惑,不妨参照上述方法进行尝试。如果想了解更多相关内容,请关注创新互联成都网站设计公司行业资讯。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
本文标题:Layui和Django实现后台布局-创新互联
标题链接:http://www.scyingshan.cn/article/dedojh.html

 建站
建站
 咨询
咨询 售后
售后
 建站咨询
建站咨询 
 