字段类型
编辑本页警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 2.1,现已不再维护。
读本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。
字段类型
呈现一个输入文本字段,专门处理数字输入。此类型为您希望用于数字的精度、舍入和分组提供了不同的选项。
呈现为 | 输入 文本 场 |
选项 | |
继承的选项 | |
父类型 | 场 |
类 | NumberType |
场的选择
精度
类型:整数
默认的:特定于区域的(通常在3.
)
这指定在字段舍入提交的值之前允许使用多少小数(通过rounding_mode
).例如,如果精度
设置为2
的提交值20.123
会四舍五入到,例如,20.12
(取决于你的rounding_mode
).
rounding_mode
类型:整数
默认的:IntegerToLocalizedStringTransformer: ROUND_HALFUP
如果提交的数字需要四舍五入(基于精度
选项),您有几个可配置的舍入选项。每个选项都是常量IntegerToLocalizedStringTransformer:
IntegerToLocalizedStringTransformer: ROUND_DOWN
舍入模式为舍入到零。IntegerToLocalizedStringTransformer: ROUND_FLOOR
舍入模式为向负无穷舍入。IntegerToLocalizedStringTransformer: ROUND_UP
舍入模式为舍入
远离零。IntegerToLocalizedStringTransformer: ROUND_CEILING
舍入模式向正无穷舍入。IntegerToLocalizedStringTransformer: ROUND_HALFDOWN
舍入模式向“最近邻居”舍入,除非两个邻居距离相等,在这种情况下舍入向下。IntegerToLocalizedStringTransformer: ROUND_HALFEVEN
舍入模式向“最近的邻居”舍入,除非两个邻居是等距离的,在这种情况下,舍入到偶数邻居。IntegerToLocalizedStringTransformer: ROUND_HALFUP
舍入模式向“最近邻居”舍入,除非两个邻居距离相等,在这种情况下舍入。
分组
类型:整数
默认的:假
该值在内部用作NumberFormatter:: GROUPING_USED
值时使用PHP的NumberFormatter
类。它的文档欧宝官网下载app是不存在的,但是如果您将其设置为真正的
,数字将以逗号或句号(取决于您的语言环境)分组:12345.123
将显示为12345年.123
.
继承的选项
方法继承了这些选项场类型:
要求
类型:布尔
默认的:真正的
如果为,则HTML5所需属性将被渲染。相应的标签
还会渲染一个要求
类。
这是肤浅的,独立于验证。如果您让Symfony猜测您的字段类型,ob娱乐下载那么这个选项的值将从您的验证信息中猜测出来。
read_only
2.1
的read_only
选项在2.1中被更改为渲染为只读的
HTML属性。在此之前,它呈现为禁用
属性。使用禁用选项,如果您需要旧的行为。
类型:布尔
默认的:假
如果此选项为true,则该字段将使用只读的
属性,使字段不可编辑。
error_bubbling
类型:布尔
默认的:假
除非表格是复合
如果为真,此字段的任何错误都将传递给父字段或表单。例如,如果在一个普通字段上设置为true,该字段的任何错误都将附加到主表单,而不是特定的字段。
2.1
的error_mapping
选项是Symfony 2.1的新功ob娱乐下载能。
error_mapping
类型:数组
默认的:空
此选项允许您修改验证错误的目标。
假设您有一个名为matchingCityAndZipCode
这将验证城市和邮政编码是否匹配。不幸的是,没有“matchingCityAndZipCode”
字段,所以Symfony所能做的就是在表单的顶部显示错误。ob娱乐下载
使用自定义错误映射,你可以做得更好:将错误映射到城市字段,这样它就会显示在它上面:
1 2 3 4 5 6 7 8
公共函数setDefaultOptions(OptionsResolverInterface$解析器){$解析器->setDefaults (数组(“error_mapping”= >数组(“matchingCityAndZipCode”= >“城市”,),));}
下面是映射左侧和右侧的规则:
- 左侧包含属性路径。
- 如果冲突是在类的属性或方法上生成的,那么它的路径就是“propertyName”。
- 类的项上生成的违例
数组
或ArrayAccess
对象时,属性路径为(indexName)
. - 您可以通过连接它们来构造嵌套的属性路径,用圆点分隔属性。例如:
地址[工作].matchingCityAndZipCode
- 错误映射的左侧也接受一个点
.
,它指的是字段本身。这意味着添加到字段中的任何错误都会添加到给定的嵌套字段中。 - 右侧仅包含表单中字段的名称。
invalid_message
类型:字符串
默认的:此值无效
这是验证错误消息,如果输入到该字段的数据没有意义(即验证失败),将使用该消息。
例如,如果用户将无意义的字符串输入到时间字段不能转换为实时的,或者如果用户输入字符串(例如。苹果
)转换为数字字段。
正常(业务逻辑)验证(例如在设置字段的最小长度时)应该使用验证消息和验证规则(参考).
invalid_message_parameters
类型:数组
默认的:数组()
当设置invalid_message
选项时,您可能需要在字符串中包含一些变量。这可以通过在该选项中添加占位符并包括该选项中的变量来实现:
1 2 3 4 5
$构建器->add (“some_field”,“some_type”,数组(/ /……“invalid_message”= >'您输入的值无效-它应该包含%num%字母',“invalid_message_parameters”= >数组(“% num %”= >6)));