我正在使用Sonata Admin套件为我的某个网站创建管理员。我有一个表格,它有很多领域。我有一个日期字段,我希望在保存表单时将其自动保存到数据库。意味着我希望从用户隐藏日期字段,但应保存日期。我怎样才能做到这一点..??我尝试过隐藏的表单类型,但它没用。请帮我。提前致谢
答案 0 :(得分:2)
首先删除 configureFormFields()功能
中的日期字段您可以在管理类中使用 prePersist()和 preUpdate()方法
public function prePersist($data) {
$data->setDateField(date);
}
public function preUpdate($data) {
$data->setDateField(date);
}
在您的Entitie日期字段中,名为 startDate 。
因此,您可以在 prePersist()或 preUpdate() setDateField()更改为 setStartDate() >
答案 1 :(得分:1)
在AdminClass中,您可以使用preUpdate()
和prePersist()
方法设置日期值。
您还可以使用StofDoctrineExtensionsBundle https://github.com/stof/StofDoctrineExtensionsBundle/blob/master/Resources/doc/index.rst和Timestampable Extension
时间戳 - 更新创建,更新甚至是日期字段 财产变化。