thymeleaf判断对象是否为空的相关逻辑处理
thymeleaf
判断对象是否为空有关逻辑处理
场景一
在项目中,有时会遇到下面场景:
添加页面和编辑页面共用一个页面,而通过后台传来的对象来判断提示用户是编辑页面还是添加页面,而编辑页面要使用这个对象的,添加页面用不到。在此记录下自己遇到的问题,看到了别人的博客才解决了
@RequestMapping(path = {"/add", "edit"}, method = {RequestMethod.GET})
public String addOrEdit(Model model, @RequestParam(name = "postId", required = false) Long postId) {if (!StringUtils.isEmpty(postId)) {UserLoginResult userLoginResult = (UserLoginResult) SecurityUtils.getSubject().getPrincipal();PostVO postVO = postService.findOnePostVO(postId);Assert.isTrue(postVO != null, "该帖子已被删除");Assert.isTrue(postVO.getUserId().longValue() == userLoginResult.getId().longValue(), "没有权限操作");model.addAttribute("post", postVO);}List<Category> categoryList = categoryService.findCategoryAllOfName();model.addAttribute("list", categoryList);return "jie/add";}
}
前后使用了 th:if,th:switch
,三目运算符等无法实现,目前来说这样可以实现
<!-- 正确写法可以实现 -->
<li class="layui-this" th:text="${post != null?'编辑页面':'添加页面'}"></li>
<!-- 无法实现 -->
<li class="layui-this" th:text="${post} ne 'null'?'编辑页面':'添加页面'"></li>
场景二
对于上述编辑页面,要使用后台数据进行下拉框的填充。而添加页面无需下拉框数据的填充。由于二者是公用一个页面,解决如下,记录一下
<div class="layui-input-block"><select lay-verify="required" name="categoryId" lay-filter="column"><option></option><!-- 此处遍历 --><option th:each="category:${categoryList}" th:value="${category.id}"th:text="${category.categoryName}"<!-- 加了这个 ‘?’ 用于判断 -->th:selected="${category.id} == ${post?.categoryId}"></option></select>
</div>
th:selected="${category.id} == ${post?.categoryId}"
- 当在编辑页面时,下拉框时需要数据填充,并根据条件选中某一项数据
- 当在添加页面时,是不需要数据的。此时就要下拉框取消选中
- 这个
?
就是为了判断对象是否为空,如果为空就不会渲染页面(下拉框选中)
thymeleaf判断对象是否为空的相关逻辑处理相关推荐
- java 判断对象是否为空_java怎么判断对象是否为空
java怎么判断对象是否为空 发布时间:2020-06-22 11:28:11 来源:亿速云 阅读:122 作者:Leah 本篇文章展示了java判断对象是否为空的具体操作,代码简明扼要容易理解,绝对 ...
- java怎么判断对象不为空_java判断对象是否为空的方法
java判断对象是否为空的方法 发布时间:2020-06-25 14:39:17 来源:亿速云 阅读:134 作者:Leah 这篇文章将为大家详细讲解有关java判断对象是否为空的方法,文章内容质量较 ...
- java判断bean是否为空_总结java中判断对象是否为空的方法
我们想要判断对象是否为空,像基本类型那样判断是不可以的, ==={} ?这样是错误的,因为这只是比较引用地址是否相同,所以可以采取下面的方法来进行判断. 1.根据for...in遍历对象,如果存在则返 ...
- html判断对象是否为空,javascript怎么判断对象是否为空对象?
在开发过程中常常会遇到判断对象和数组是否为空的情况,那么怎么判断对象是否为空对象?下面本篇文章就来给大家介绍一下使用javascript判断对象是否为空对象的方法,希望对大家有所帮助. 1.通过 JS ...
- java判断一个对象是否为空_Java中判断对象是否为空的方法的详解
首先来看一下工具StringUtils的判断方法: 一种是org.apache.commons.lang3包下的: 另一种是org.springframework.util包下的.这两种StringU ...
- javascript中判断对象是否为空几种场景
1. 代码1: var a = {}; if(!a){ console.log(1);} else if(a == null) { console.log(2);} else { console.l ...
- python观察日志(part5)--判断对象是否为空
python之判断对象是否为空 判断对象是否为None 要研究这个问题,首先我们要弄清楚,啥是None. ①None表示空值,它是一个特殊 Python 对象, None的类型是NoneType. ② ...
- es6 对象中是否有键值_js/es6判断对象是否为空,并判断对象是否包含某个属性...
js判断对象为空以及有好几种方法了,但是个人觉得不是特别方便. 比如: 1.把对象通过 JSON.stringify 转为字符串,再判断字符串是否等于 " {} " 2.for i ...
- JS判断对象是否为空(个人常用)
JS判断对象是否为空 1.将json对象转化为json字符串,再判断该字符串是否为"{}" var data = {}; var isNull = (JSON.stringify( ...
- 微信小程序中判断对象是否为空;或者是否包含某个字符串,以及使用indexOf判断时注意事项
由于要校验cookie的状态是否为有效的,开发了测试接口,根据返回的数据判断是否有效,若无效则调用登录接口,获取新的cookie信息: 判断信息如下: success: function (res) ...
最新文章
- 一些少见的下载地址(按需求更新)
- 在python中、下列代码的输出是什么-关于下列python多线程代码输出效果的疑问?...
- hibernate教程--常用配置和核心API详解
- 建了个龙悦居社区网www.long360.net,图片独立部署
- python线程创建对象_Python线程下thread对象的用法介绍(附实例)
- java反射机制_java反射机制的讲解
- 想给男友一个惊喜,没想到是这样的结局......
- 用python批量执行VBA代码
- 交换机知识--生成树协议
- python小程序设计4s店_python自写的车牌识别小程序,完全自主实现。图片处理
- Proj.4 API 中文参考
- 手机图标ui设计尺寸:ui设计app图标尺寸规范
- 考研计算机专业课961考什么,北航计算机考研(961)经验谈
- 软件测试面试题:简述什么是静态测试、动态测试、黑盒测试、白盒测试、α测试 β测试?
- QQ通信原理及QQ是怎么穿透内网进行通信的?
- js计算文件MD5值
- php pecl libevent,ubuntu – 安装PHP libevent PECL包的问题
- SqlServer与MySql的一些常用用法的差别
- win10找不到便签(便利贴)怎么办,Win10找回便签功能的方法
- Buffer Pool详解
热门文章
- 阿里云云计算 26 SLB的配置
- 极客大学产品经理训练营 认识产品经理上 第1课总结
- 算法:全一子串的数量 或 全零子串的数量 1513. Number of Substrings With Only 1s
- NumPy库---一元函数
- oracle转为纯大写,Oracle认证:oracle中小写转换成大写方法
- 可以在线测试血糖的软件,血糖也能自己测,糖护士荷智能血糖仪体验:测血糖就这么简单...
- 2021-09-08 全排列
- 决策树C4.5算法的不足
- numpy.squeeze()的用法
- 创建一个超链接,点击这个超链接,显示数据库中的数据信息:MVC模式查询