本文整理汇总了PHP中Sonata\AdminBundle\Admin\Admin::getFormFieldDescriptions方法的典型用法代码示例。如果您正苦于以下问题:PHP Admin::getFormFieldDescriptions方法的具体用法?PHP Admin::getFormFieldDescriptions怎么用?PHP Admin::getFormFieldDescriptions使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sonata\AdminBundle\Admin\Admin
的用法示例。
在下文中一共展示了Admin::getFormFieldDescriptions方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: manageEmbeddedImageAdmins
public static function manageEmbeddedImageAdmins(Admin $admin, $subject)
{
// Cycle through each field
foreach ($admin->getFormFieldDescriptions() as $fieldName => $fieldDescription) {
// detect embedded Admins that manage Images
if ($fieldDescription->getType() === 'sonata_type_admin' && ($associationMapping = $fieldDescription->getAssociationMapping()) && $associationMapping['targetEntity'] === 'ZenSide\\SonataImageBundle\\Entity\\Image') {
$getter = 'get' . $fieldName;
$setter = 'set' . $fieldName;
/** @var Image $image */
$image = $subject->{$getter}();
if ($image) {
if ($image->getFile()) {
// update the Image to trigger file management
$image->refreshUpdated();
} elseif (!$image->getFile() && !$image->getFilename()) {
// prevent Sf/Sonata trying to create and persist an empty Image
$subject->{$setter}(null);
}
}
}
}
}