社区首页 >问答首页 >我不能对grails 'inList‘中的double列表验证double

我不能对grails 'inList‘中的double列表验证double
EN

Stack Overflow用户
提问于 2013-05-09 01:51:08
回答 1查看 273关注 0票数 2

我是grails的新手,所以我希望不会因为疏忽而让自己难堪,但我已经尝试过两次这个问题,并经历了从替身列表中验证'inList‘的持续失败。我寻找了关于这个问题的以前的报告,并找到了一个。所以就是这样:

我想用inList约束根据可接受的double列表来验证double类型的字段。脚手架生成的逻辑确实使用g:select在网页上正确地显示替身列表。当我从下拉列表中选择任何有效的doubles时,域类中的'inList‘验证都会拒绝它们。例如,如果我从下拉列表中选择了'2.0‘,我会在网页上看到这样的错误消息:

值为2的类demo2.FloatsOkInList的属性aFloat不包含在列表[1.0,2.0,3.0,4.0]中

好的,我可以看到'2.0‘已经被带回了'2',所以在往返过程中,我的提交可能已经被格式化以显示,或者被转换为Integer或String。但是我的代码没有完成这种转换。我的控制器是我没有修改过的纯模板。我的域名代码是:

代码语言:javascript
代码运行次数:0
复制
 class FloatsOkInList {
    String aKey
    Double aFloat
    static constraints = {
        aKey unique : true, blank : false
        aFloat blank : false , inList :[ 1.0, 2.0, 3.0, 4.0]
    }
}

该视图将生成一个如下所示的字段:

代码语言:javascript
代码运行次数:0
复制
<g:select name="aFloat" from="${floatsOkInListInstance.constraints.aFloat.inList}" required="" value="${fieldValue(bean: floatsOkInListInstance, field: 'aFloat')}" valueMessagePrefix="floatsOkInList.aFloat"/>

我不认为期望'inList‘验证一个替身列表是不合理的。

应用程序状态应用程序版本:0.1Grails版本: 2.2.1 Groovy版本:2.0.7JVM版本: 1.7.0_01重新加载活动:真实控制器:2个域:1 ...

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-09 02:15:28

默认情况下,1.0BigDecimal

[ 1.0, 2.0, 3.0, 4.0]是BigDecimal的列表。

在上面的列表中找不到Double

assert !1.0D in [1.0, 2.0, 3.0, 4.0]

使用inList: [1D, 2D, 3D, 4D]inList: (1..4)*.toDouble()

而不是在约束中。

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

https://stackoverflow.com/questions/16453098

复制
相关文章
MYSQL Double Write 我关掉行不?
这个问题是在某个群里面,看见有人问的,已经2020年了,到底Double write 能不能关,这是一个好问题。因为有些数据库压根没有 Double write 也就没有性能上的损耗了。那为什么MYSQL 要有DOUBLE WRITE ,并且可以关吗?
AustinDatabases
2020/04/10
2.1K0
MYSQL  Double Write 我关掉行不?
The method assertEquals(double, double) from the type Assert is deprecated
assertEquals(double expected,double actul) 被废弃了,换成assertEquals(double expected,double actul,double delta)
全栈程序员站长
2022/09/14
6740
float double取值范围_double float区别
要说清楚Java浮点数的取值范围与其精度,必须先了解浮点数的表示方法,浮点数的结构组成,之所以会有这种所谓的结构,是因为机器只认识01,你想表示小数,你要机器认识小数点这个东西,必须采用某种方法,比如,简单点的,float四个字节,前两个字节表示整数位,后两个字节表示小数位(这就是一种规则标准),这样就组成一个浮点数。而Java中浮点数采用的是IEEE 754标准。
全栈程序员站长
2022/11/03
1.9K0
java double转decimal_Java中Double与BigDecimal的相互转换
今天写代码过程中,发现一个Double的变量通过new BigDecimal(Double d)转换为BigDecimal时,有效数字改变了,如下:
全栈程序员站长
2022/08/31
1.8K0
Java BigDecimal和double-BigDecimal转double-double转BigDecimal
对于不需要任何准确计算精度的数字可以直接使用float或double,但是如果需要精确计算的结果,则必须使用BigDecimal类,而且使用BigDecimal类也可以进行大数的操作。BigDecimal类的常用方法如表11-15所示。
全栈程序员站长
2022/08/19
2.4K0
java中double的NAN和INFINITY
在开发中double的处理时会出现NAN(无穷小)和INFINITY(无穷大)的情况,所以我们需要在这种情况时加一下处理
余生大大
2022/10/25
1.2K0
Sort By Double
I have wrote a article which describes how to deal with a complicate data structure “sortable tree”. See here. As i said, it is so complicate that cann’t be maintain easily. Now, i have found a new fluent way to sort this tree:”Sorting by Double”. “Sorting
用户1172223
2018/01/26
9740
小心double的比较
对于double的比较,存在一些可能的坑,大家应该都清楚。比如容易注意的是double==double的精度问题。但是比较少注意的是double.NaN的比较
黄腾霄
2020/06/10
1.4K0
我和Double Lift的故事(五)——升华篇​
本来这个系列写到第二篇时,写完了我学习各种Double Lift的使用方法的进步以及应用的逻辑以后,基本上也就江郎才尽了。不料最近灵感突发,决定狗尾续貂一波,再度升华一把这个扑克手法的经典。十多年的打磨和思考,总是能够不经意中给我一些意想不到的收获。
magic2728
2020/02/17
5080
我和Double Lift的故事(三)——应用篇
在前面的文章中,我们介绍了Double Lift的手法进化过程,以及相应的步骤总结和数学模型描述,这也是我自己的学习旅程,分享出来希望对大家的魔术学习,思维锻炼有所帮助。而谈到手法,最重要的特性是自然,要有一个真实的动作与之相似和对应。希望大家能从前一篇分析中以小见大,能用更合理实用的方式看待和练习魔术手法。相关内容回顾见:
magic2728
2020/01/15
4160
Java 中 long 和 double 的原子性?
可以看到,程序中有两条线程t1,t2; t1,t2各自不停的给long类型的静态变量field赋值为1,-1; t1,t2每次赋值后,会读取field的值,若field值既不是1又不是-1,就将field的值打印出来
芋道源码
2019/10/29
2.3K0
java中double类型操作精度丢失
在用到double类型数据加减运算时,遇到了一个奇怪的问题,比如1+20.2+300.03,理论上结果应该是321.23,其实结果并不是这样。
似水的流年
2019/12/05
1.5K0
POJ 3481 Double Queue
给你0-3四个指令: 0 退出 1 添加优先级为P 的 K值,进入队列 2 最高优先级出队 3 最低优先级出队
Michael阿明
2021/02/20
6360
POJ 3481 Double Queue
我和Double Lift的故事(四)——实战篇
在上一篇中,我们借Double Lift手法,介绍了如何从一个基本手法变成一个魔术表演的过程。其核心就是魔术效果的制造与呈现的分离,在后来我与郭玉文老师的探讨中,他说,这也叫“声东击西,顺手牵羊”。在手法的基础上,以及上一篇的应用理论下,我们今天来看三个作品进一步理解这里面的精髓。部分作品曾经已经分享过,但是,今天主要从Double Lift作为流程的组成成分以及如何把手法组合成魔术的角度来分析其实战中的使用。
magic2728
2020/02/17
4180
Double转BigDecimal的坑
掉支付Api的时候对金额是十分敏感的。这里转换的时候一定要注意。使用Double.toString(x),或者BigDecimal.valueOf(x)
全栈程序员站长
2022/09/05
1.5K0
Java中double转BigDecimal的注意事项
3,把这个float变量赋值给一个 BigDecimal对象,用的是BigDecimal的double参数的构造:
全栈程序员站长
2022/08/15
1.3K0
REdis zset和double
结论:Zset的最大分数不要超过18014398509481982(17位数字,54位二进制),否则不会得到期望的值。
一见
2019/05/10
1.5K0
REdis zset和double
double类型大小比较的方法
在Java中,int类型数据的大小比较可以使用双等号,double类型则不能使用双等号比较大小,那若使用double类型时怎么进行比较呢?
算法与编程之美
2023/01/04
2.2K0
double类型大小比较的方法
用gson得JSON,数值变为double类型 ,去掉double值中的小数位(3.0改为3)
1. 项目中有个接口的数据是从缓存中读取再组成JSON 格式返出,原本缓存中数据是这样的:
微风-- 轻许--
2022/04/13
2.3K0
用gson得JSON,数值变为double类型 ,去掉double值中的小数位(3.0改为3)
点击加载更多

相似问题

从Double列表返回List[Double],Map[String,Double]

114

double[] -> double[,]

22

错误:无法在赋值中将'double (evaluator::*)(double,double)‘转换为'double (*)(double,double)’

22

“std::function<double(Double)>”到“double(*)(Double)”之间的转换

25

将DStream[Double,Double]转换为RDD[(Double,Double)]

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文