【问题标题】:Hidden form field Sonata Admin Bundle隐藏表单域 Sonata Admin Bundle
【发布时间】:2013-11-19 10:03:09
【问题描述】:

我正在使用 Sonata Admin 包为我的一个网站创建管理员。我有一个表格,它有很多字段。我有一个日期字段,我希望在保存表单时将其自动保存到数据库中。意味着我希望对用户隐藏日期字段,但应该保存日期。我怎样才能做到这一点..??我尝试过使用隐藏表单类型,但它没有用。请帮我。提前致谢

【问题讨论】:

    标签: symfony sonata-admin


    【解决方案1】:

    首先删除configureFormFields()函数中的datefield

    您可以在管理类中使用 prePersist()preUpdate() 方法

         public function prePersist($data) {
                 $data->setDateField(date);
         }
         public function preUpdate($data) {
                 $data->setDateField(date);
         }
    

    在名为 startDate 的实体日期字段中。

    因此,您可以在 prePersist()preUpdate() 中将 setDateField() 更改为 setStartDate() >

    【讨论】:

    • 谢谢@M.B Kakadiya。但我希望嵌入式管理员中有这个功能。我怎样才能做到这一点?现在我无法更新子表日期。
    【解决方案2】:

    在 AdminClass 中,您可以使用 preUpdate()prePersist() 方法设置日期值。

    您还可以使用 StofDoctrineExtensionsBundle https://github.com/stof/StofDoctrineExtensionsBundle/blob/master/Resources/doc/index.rst 和 Timestampable Extension

    Timestampable - 在创建、更新甚至更新日期字段 属性变化。

    【讨论】:

      猜你喜欢
      • 2016-04-20
      • 2016-09-03
      • 1970-01-01
      • 1970-01-01
      • 2016-06-25
      • 2018-07-22
      • 2016-05-31
      • 2012-07-15
      • 2016-10-11
      相关资源
      最近更新 更多