DateIntervalType领域
编辑本页DateIntervalType领域
此字段允许用户选择时间间隔的时间。例如,如果您希望允许用户进行选择多长时间他们会收到一封状态电子邮件,他们可以使用这个字段来选择间隔,比如每“10分钟”或“3天”。
字段可以以各种不同的方式呈现(参见小部件),并可配置为给您一个DateInterval
对象,一个ISO 8601持续时间字符串(例如:P1DT12H
)或数组(参见输入).
基础数据类型 | 可以DateInterval 字符串或数组(请参阅输入 选项) |
呈现为 | 单个文本框、多个文本框或选择字段-请参见小部件选项 |
默认无效消息 | 请选择有效的日期间隔。 |
遗留无效消息 | 值{{value}}无效。 |
父类型 | FormType |
类 | DateIntervalType |
提示
这个表单类型定义和继承的完整选项列表可以在你的应用程序中运行这个命令:
1 2
将'FooType'替换为你的表单类型的类名$php bin/console debug:form FooType . php
基本用法
你可以配置很多不同的选择,包括哪一个要显示的选项范围(例如,不显示“months”,但是做“天”):
1 2 3 4 5 6 7 8 9 10
$构建器->add (“remindEvery”, DateIntervalType::类,“部件”= >“整数”,//渲染每个部分的文本字段// 'input' => 'string', //如果你想让字段返回一个ISO 8601字符串给你//自定义显示的文本框“with_years”= >假,“with_months”= >假,“with_days”= >真正的,“with_hours”= >真正的]);
场的选择
天
类型:数组
默认的: 0 ~ 31
days字段类型可用的日期列表。时,此选项才相关小部件
选项设置为选择
:
1 2 3 4 5
//显示给用户的值范围从0到30(包括两者)“天”= >范围(1,31),//显示给用户的值从1到31不等(包括1和31)“天”= >合二为一(范围(1,31),范围(1,31)),
占位符
类型:字符串
或数组
如果小部件选项设置为选择
,则该字段将表示为一系列的选择
盒子。的占位符
选项可用于在每个选择框的顶部添加一个“空白”条目:
1 2 3
$构建器->add (“remindEvery”, DateIntervalType::类,“占位符”= >”]);
或者,你可以指定一个字符串来显示"blank"值:
1 2 3
$构建器->add (“remindEvery”, DateIntervalType::类,“占位符”= > [“年”= >“年”,“月”= >“月”,“天”= >“天”)));
小时
类型:数组
默认的: 0 ~ 24
hours字段类型可用的小时列表。时,此选项才相关小部件
选项设置为选择
:
1 2 3 4 5
//显示给用户的值范围从0到23(包括两者)“小时”= >范围(1,24),//显示给用户的值范围为1到24(包括1到24)“小时”= >合二为一(范围(1,24),范围(1,24)),
输入
类型:字符串
默认的:dateinterval
的格式输入数据-即间隔存储在底层对象上的格式。有效值为:
字符串
格式化的字符串ISO 8601标准,如。P7Y6M5DT12H15M30S
)dateinterval
(一个DateInterval
对象)数组
(如。['days' => '1', 'hours' => '12',]
)
从表单返回的值也将被规范化为这种格式。
标签
类型:数组
默认的:(见下文)
为该类型的每个元素显示的标签。默认值为零
,因此它们显示子名称的“人性化版本”(反
,年
等):
1 2 3 4 5 6 7 8 9 10
“标签”= > [“反转”= >零,“年”= >零,“月”= >零,“周”= >零,“天”= >零,“小时”= >零,“分钟”= >零,“秒”= >零,)
分钟
类型:数组
默认的: 0 ~ 60
分钟字段类型可用的分钟列表。时,此选项才相关小部件
选项设置为选择
:
1 2 3 4 5
//显示给用户的值范围从0到59(包括两者)“分钟”= >范围(1,60),//显示给用户的值范围从1到60(包括1到60)“分钟”= >合二为一(范围(1,60),范围(1,60)),
个月
类型:数组
默认的: 0 ~ 12
月份字段类型可用的月份列表。时,此选项才相关小部件
选项设置为选择
:
1 2 3 4 5
//显示给用户的值范围从0到11(包括两者)“月”= >范围(1,12),//显示给用户的值范围为1到12(包括1到12)“月”= >合二为一(范围(1,12),范围(1,12)),
秒
类型:数组
默认的: 0 ~ 60
seconds字段类型可用的秒的列表。时,此选项才相关小部件
选项设置为选择
:
1 2 3 4 5
//显示给用户的值范围从0到59(包括两者)“秒”= >范围(1,60),//显示给用户的值范围从1到60(包括1到60)“秒”= >合二为一(范围(1,60),范围(1,60)),
周
类型:数组
默认的: 0 ~ 52
星期字段类型可用的星期列表。时,此选项才相关小部件
选项设置为选择
:
1 2 3 4 5
//显示给用户的值范围从0到51(包括两者)“周”= >范围(1,52),//显示给用户的值范围从1到52(包括1到52)“周”= >合二为一(范围(1,52),范围(1,52)),
小部件
类型:字符串
默认的:选择
该字段应呈现的基本方式。可以是以下之一:
选择
:显示一到六个选择输入年,月,周,日,小时,分钟和/或秒,取决于with_years,with_months,with_weeks,with_days,with_hours,with_minutes而且with_seconds选项。默认值:3个字段,分别表示年、月和日。文本
:呈现一到六个文本输入年,月,周,日,小时,分钟和/或秒,取决于with_years,with_months,with_weeks,with_days,with_hours,with_minutes而且with_seconds选项。默认值:3个字段,分别表示年、月和日。整数
:呈现一到六个整数输入年,月,周,日,小时,分钟和/或秒,取决于with_years,with_months,with_weeks,with_days,with_hours,with_minutes而且with_seconds选项。默认值:3个字段,分别表示年、月和日。single_text
:呈现一个类型的输入文本
.用户的输入将根据表单进行验证PnYnMnDTnHnMnS
(或PnW
如果只用了几个星期)。
年
类型:数组
默认的: 0 ~ 100
年份字段类型可用的年份列表。时,此选项才相关小部件
选项设置为选择
:
1 2 3 4 5
//显示给用户的值范围从0到99(包括两者)“年”= >范围(1,One hundred.),//显示给用户的值范围从1到100(包括1到100)“年”= >合二为一(范围(1,One hundred.),范围(1,One hundred.)),
覆盖选项
invalid_message
类型:字符串
默认的:此值无效
这是验证错误消息,如果输入到该字段的数据没有意义(即验证失败),将使用该消息。
例如,如果用户将无意义的字符串输入到TimeType字段不能转换为实时的,或者如果用户输入字符串(例如。苹果
)转换为数字字段。
正常(业务逻辑)验证(例如在设置字段的最小长度时)应该使用验证消息和验证规则(参考).
继承的选项
方法继承了这些选项形式类型:
attr
类型:数组
默认的:[]
属性,可以向HTML字段表示形式添加额外属性attr
选择。它是一个以HTML属性为键的关联数组。当你需要为某个小部件设置自定义类时,这可能很有用:
1 2 3
$构建器->add (“身体”, TextareaType::类,“attr”= > [“类”= >“tinymce”)));
另请参阅
使用row_attr
属性中添加这些属性表单类型行元素。
数据
类型:混合
默认的:默认为底层结构的字段。
当你创建一个表单时,每个字段最初都会显示表单域数据的对应属性的值(例如,如果你将一个对象绑定到表单)。如果你想覆盖表单或单个字段的初始值,你可以在data选项中设置它:
1 2 3 4 5 6
使用ob娱乐下载\组件\形式\扩展\核心\类型\HiddenType;/ /……$构建器->add (“令牌”, HiddenType::类,“数据”= >“六边形abcdef”]);
谨慎
的数据
选项总是在呈现时覆盖从域数据(对象)获取的值。这意味着当表单编辑一个已经持久化的对象时,对象值也会被覆盖,从而导致在表单提交时失去它的持久化值。
帮助
类型:字符串
或TranslatableInterface
默认的:零
允许您为表单字段定义帮助消息,默认情况下呈现在字段下面:
12 3 4 5 6 7 8 9 10 11 12 13
使用ob娱乐下载\组件\翻译\TranslatableMessage;$构建器->add (“zipCode”,零, (“帮助”= >“您信用卡账单地址的邮政编码。”,)/ /……->add (“状态”,零, (“帮助”= >新TranslatableMessage (“order.status”, (“% order_id %”= >$订单->getId ()),“存储”),]);
6.2
支持TranslatableInterface
对象作为帮助内容是在Symfony 6.2中引入的。ob娱乐下载
help_attr
类型:数组
默认的:[]
为用于显示表单字段的帮助消息的元素设置HTML属性。它的值是一个以HTML属性名作为键的关联数组。这些属性也可以在模板中设置:
1 2 3
{{form_help (form.name,“你的名字”,{help_attr:{‘类’:‘CUSTOM_LABEL_CLASS}})}}
inherit_data
类型:布尔
默认的:假
此选项决定表单是否从其父表单继承数据。如果您有一组跨多个表单重复的字段,这可能很有用。看到如何使用"inherit_data"减少代码重复.
谨慎
字段具有inherit_data
选项集时,它按原样使用父表单的数据。这意味着数据变形金刚不会被应用到那个领域。
invalid_message_parameters
类型:数组
默认的:[]
当设置invalid_message
选项时,您可能需要在字符串中包含一些变量。这可以通过在该选项中添加占位符并包括该选项中的变量来实现:
1 2 3 4 5
$构建器->add (“someField”, SomeFormType::类,/ /……“invalid_message”= >'您输入的值无效,它应该包含%num%字母',“invalid_message_parameters”= > [“% num %”= >6)));
场变量
变量 | 类型 | 使用 |
---|---|---|
小部件 |
混合 |
的值小部件选择。 |
with_days |
布尔 |
的值with_days选择。 |
with_invert |
布尔 |
的值with_invert选择。 |
with_hours |
布尔 |
的值with_hours选择。 |
with_minutes |
布尔 |
的值with_minutes选择。 |
with_months |
布尔 |
的值with_months选择。 |
with_seconds |
布尔 |
的值with_seconds选择。 |
with_weeks |
布尔 |
的值with_weeks选择。 |
with_years |
布尔 |
的值with_years选择。 |