Python:Django 中{{ }}标签与layui的 laytpl的模版分隔符冲突解决方法

18 篇文章 0 订阅
9 篇文章 0 订阅

在使用layui的时候,需要使用到layui数据表格的模板,这时候遇到了{{}}转义的问题。在django中{{}}是获取变量值,这就跟layui的laytpl模板分隔符{{ }} 【{{}} 在laytpl中是默认的分隔符】冲突了。

方法一:如果当前页面没有使用layui的table,则可以使用重新定义分隔符

laytpl.config({
  open: '<%',
  close: '%>'
});

//分割符将必须采用上述定义的
laytpl([
  '<%# var type = "公"; %>' //JS 表达式
  ,'<% d.name %>是一位<% type %>猿。'
].join('')).render({
  name: '贤心'
}, function(string){
  console.log(string); //贤心是一位公猿
});   

 

方法二:如果当前页面使用了layui的table,这时候就需要django不转译指定的内容。

千万不可重新定义分隔符,因为layui的数据表格组件的源码中已经将分隔符写死,所以无法通过laytpl.config自定义模板分隔符来解决问题。

如果使用了,页面会出现一对乱码

{{# if(d.data.toolbar){ }}

{{# } }}
{{# if(d.data.loading){ }}{{# } }}{{# var left, right; }}
{{# layui.each(d.data.cols, function(i1, item1){ }}{{# layui.each(item1, function(i2, item2){ }}{{# if(item2.fixed && item2.fixed !== "right"){ left = true; } }}{{# if(item2.fixed === "right"){ right = true; } }}{{# var isSort = !(item2.colGroup) && item2.sort; }}{{# }); }}{{# }); }}
{{# if(item2.type === "checkbox"){ }}{{# } else { }}{{item2.title||""}}{{# if(isSort){ }}{{# } }}{{# } }}

{{# if(item2.type === "checkbox"){ }}{{# } else { }}{{item2.title||""}}{{# if(isSort){ }}{{# } }}{{# } }}

感谢:https://www.cnblogs.com/ligh-test/p/9838145.html

从Django 1.5开始,支持{% verbatim %}标签(verbatim的意思是逐字翻译的,字面意思的),Django不会渲染verbatim标签包裹的内容。

所以只需要在{{}}前后加上{% verbatim %}  和   {% endverbatim %}标签即可

原报错代码:

<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{{ d.name }} </a>

修改后可执行代码:

<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{% verbatim %}{{ d.name }} {% endverbatim %}</a>

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 要实现婚庆系统源码,可以使用PythonDjango框架和Layui前端框架进行开发。 首先,使用Django框架进行后端开发。可以创建一个Django项目,并建立婚庆系统所需的数据库模型。可以创建Wedding模型来存储婚庆相关的信息,例如婚礼日期、地点、主持人、新郎新娘姓名等。同时,可以建立Guest模型来存储婚宴的宾客信息,例如姓名、座位号、是否到场等。还可以创建其他需要的模型,如宴会厅、菜单、花艺等。 然后,使用Django的视图函数和URL配置来处理前端请求。可以创建婚庆系统的各个页面,例如首页、婚礼详情页、宾客管理页等,并编写相应的视图函数来处理前端请求,如获取婚礼列表、添加宾客、修改宾客信息等。 接下来,使用Layui前端框架来美化页面和实现交互效果。可以利用Layui的模块化和响应式特性,使用其提供的组件和样式来构建婚庆系统的前端界面。可以使用Layui的表格组件来展示宾客列表,并加入搜索、排序等功能。还可以使用Layui的表单组件来实现添加宾客、修改宾客信息等功能。此外,还可以利用Layui的弹层组件来实现弹出式的提示框、确认框等。 最后,将后端和前端进行整合,完成婚庆系统的开发。可以使用Django的模板引擎来渲染页面,并将前端的静态资源(如CSS、JavaScript等)与Django项目的静态文件进行整合。 通过以上步骤,就可以使用PythonDjango框架和Layui前端框架来实现婚庆系统的源码。 ### 回答2: 实现婚庆系统源码可以使用PythonDjangoLayui这三个技术来完成。 第一步是使用PythonDjango搭建婚庆系统的后台,包括用户管理、订单管理、商家管理和产品管理等功能。通过Django框架可以快速搭建起数据库模型和后台逻辑,并使用Python编写相应的业务逻辑代码。例如,通过Django提供的User模型可以实现用户登录注册功能,通过自定义模型可以实现订单和商家的管理功能。 第二步是使用Layui搭建婚庆系统的前端页面,包括用户登录注册界面、订单提交界面、商家信息展示界面等。Layui是一款非常方便易用的前端UI框架,可以大大简化前端开发的工作。通过Layui提供的各种组件和样式,可以完成婚庆系统的页面设计和交互效果的实现。 最后,将Django后台和Layui前端进行整合,实现婚庆系统的完整功能。通过Django提供的视图函数和URL路由功能,将前端页面和后台代码连接在一起。例如,用户在Layui前端页面上提交订单后,通过Django后台的视图函数进行订单数据的处理和保存。 总结起来,使用PythonDjango框架搭建婚庆系统的后台,使用Layui搭建婚庆系统的前端页面,然后将两者进行整合,就可以实现婚庆系统的源码编写。这样的婚庆系统可以提供用户注册和登录、订单提交和管理、商家信息展示和管理等功能。 ### 回答3: Python是一种高级编程语言,它非常适合用来开发Web应用程序。Django是一个流行的Python Web框架,它提供了许多用于开发高质量Web应用程序的工具和功能。而Layui则是一个轻量级的前端框架,它基于HTML和CSS,提供了丰富的界面组件和易用的样式。 要实现一个婚庆系统的源码,我们可以使用PythonDjango框架和Layui前端框架。 首先,我们可以使用Django创建一个新的Web应用程序。在Django,我们可以定义模型来建立数据库结构,例如婚礼、预订、客户等。我们可以使用Django的自带命令行工具生成数据库迁移文件,并将其应用到数据库。 接下来,我们可以使用Django的视图来处理用户的请求并渲染相应的模板。通过使用Django的模板语言,我们可以根据数据动态地生成HTML页面。在模板,我们可以使用Layui的UI组件来构建用户界面,例如表格、表单、日期选择器等。 在后端逻辑方面,我们可以编写Django的视图函数来处理用户的请求,例如创建新的婚礼预订、展示所有的预订信息等。我们可以使用Django的表单功能来验证和处理用户提交的数据,并将数据保存到数据库。 在前端方面,我们可以使用Layui的JavaScript库来增强用户交互体验。例如,我们可以使用Layui的表单验证功能来确保用户输入的数据的合法性。我们还可以使用Layui的弹窗组件来显示提示信息或确认对话框。 同时,为了增加用户的安全性,我们可以使用Django提供的用户认证系统来管理用户的登录和权限。 总结起来,使用PythonDjango框架和Layui前端框架,我们可以轻松实现一个婚庆系统的源码。通过使用Django的模型、视图和模板,以及Layui的界面组件和样式,我们可以构建一个功能完善且美观的婚庆系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值