TYPO3 groupedFor viewhelper 根据日期
TYPO3 groupedFor viewhelper according to dates
我有一个具有 3 个属性的简单模型 "item":
标题、描述、日期
现在我想要一个这样的列表:
10.10.17:
标题项目 1
标题项目 5
12.10.17:
标题项目 8
等等
根据groupedFor - grouping objects according to dates
我加了一个getter赞
/**
* Get day month year of datetime
*
* @return int
*/
public function getDayMonthYearOfDatetime()
{
return (int)$this->datum->format('dmy');
}
我的列表视图:
<f:groupedFor each="{items}" as="dayMonthYearOfDatetime" groupBy="dayMonthYearOfDatetime" groupKey="datum">
<tr>
<th>{datum}</th>
</tr>
<f:for each="{dayMonthYearOfDatetime}" as="calendar">
<tr>
<td>{item.title}</td>
</tr>
</f:for>
</f:groupedFor>
现在我得到以下输出:
101017
标题项目 1
标题项目 5
121017
标题项目 8
如何显示正确的日期“10.10.17”而不是“101017”?
如果我将 getter 更改为:
return (int)$this->datum->format('d.m.y');
没用。
如果您 return int
来自带点的日期字符串,则不能指望进行分组。
要么您需要 return 字符串(但我不知道该函数是否允许 return 除 int 以外的任何其他内容)或者您需要从 计算整数。
尝试使用 viewhelper 进行整数计算 (% 100, / 100 %100, /10000) 或简单的子字符串 (,0,2 ,2,2 ,4,2) 来提取日、月、接下来的连接年份。
您可以简单地使用第一个组项的真实日期对象。
所以会是
<f:format.date format="d.m.Y">{dayMonthYearOfDatetime.0.datum}</f:format>
return (int)$this->datum->format('d.m.y');
删除 (int)
我有一个具有 3 个属性的简单模型 "item": 标题、描述、日期
现在我想要一个这样的列表:
10.10.17:
标题项目 1
标题项目 5
12.10.17:
标题项目 8
等等
根据groupedFor - grouping objects according to dates
我加了一个getter赞
/**
* Get day month year of datetime
*
* @return int
*/
public function getDayMonthYearOfDatetime()
{
return (int)$this->datum->format('dmy');
}
我的列表视图:
<f:groupedFor each="{items}" as="dayMonthYearOfDatetime" groupBy="dayMonthYearOfDatetime" groupKey="datum">
<tr>
<th>{datum}</th>
</tr>
<f:for each="{dayMonthYearOfDatetime}" as="calendar">
<tr>
<td>{item.title}</td>
</tr>
</f:for>
</f:groupedFor>
现在我得到以下输出:
101017 标题项目 1 标题项目 5
121017 标题项目 8
如何显示正确的日期“10.10.17”而不是“101017”?
如果我将 getter 更改为:
return (int)$this->datum->format('d.m.y');
没用。
如果您 return int
来自带点的日期字符串,则不能指望进行分组。
要么您需要 return 字符串(但我不知道该函数是否允许 return 除 int 以外的任何其他内容)或者您需要从 计算整数。
尝试使用 viewhelper 进行整数计算 (% 100, / 100 %100, /10000) 或简单的子字符串 (,0,2 ,2,2 ,4,2) 来提取日、月、接下来的连接年份。
您可以简单地使用第一个组项的真实日期对象。
所以会是
<f:format.date format="d.m.Y">{dayMonthYearOfDatetime.0.datum}</f:format>
return (int)$this->datum->format('d.m.y');
删除 (int)