首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Grails GSP零安全检查故障

Grails GSP零安全检查故障
EN

Stack Overflow用户
提问于 2014-08-13 13:07:19
回答 3查看 254关注 0票数 3

我正试图在我的普惠制上填充一个文本字段,如下所示:

代码语言:javascript
复制
<label>Phone(aaa-bbb-cccc):</label>&nbsp<g:textField name="phone" style ="border-radius: 5px" 
                    value="${recordToEdit.telephones = [] ? null : recordToEdit.telephones.first()}"></g:textField><br> 

但它仍然告诉我,我无法访问空列表上的第一个()。电话是一个字符串列表,每个字符串都是一个电话号码。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-08-13 13:22:11

正如@gross所指出的,recordToEdit.telephones = [] ? .. : ..已经大错特错了,除非它是一个错误

您要进行的检查应该如下所示:

代码语言:javascript
复制
value="${recordToEdit.telephones ? recordToEdit.telephones.first() : ''}"

代码语言:javascript
复制
value="${recordToEdit.telephones?.getAt( 0 ) ?: ''}"
票数 5
EN

Stack Overflow用户

发布于 2014-08-13 13:14:50

您只需使用Null安全操作符(?)作为

代码语言:javascript
复制
${recordToEdit.telephones?.first()}

对于空检查,这是不够的。

更新

对于空列表检查和空检查,

代码语言:javascript
复制
${ recordToEdit.telephones ? recordToEdit.telephones[0] : '' }

会很好的。

票数 4
EN

Stack Overflow用户

发布于 2014-08-13 13:12:33

伙计,你不是说==而不是=吗?

看起来,您正在覆盖成功发布的telephones,而不是比较它。

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

https://stackoverflow.com/questions/25287097

复制
相关文章

相似问题

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