abstract class DoctrineType extends AbstractType
protected ManagerRegistry | $registry |
buildForm(FormBuilderInterface $builder, array $options) Builds the form. | ||
buildView(FormView $view, FormInterface $form, array $options) Builds the form view. | from AbstractType | |
finishView(FormView $view, FormInterface $form, array $options) Finishes the form view. | from AbstractType | |
configureOptions(OptionsResolver $resolver) Configures the options for this type. | ||
string | getBlockPrefix() Returns the prefix of the template block name for this type. | from AbstractType |
string|null | getParent() Returns the name of the parent type. | |
static string | createChoiceLabel(object $choice) Creates the label for a choice. | |
static string | createChoiceName(object $choice, int|string $key, string $value) Creates the field name for a choice. | |
array|false | getQueryBuilderPartsForCachingHash(object $queryBuilder) Gets important parts from QueryBuilder that will allow to cache its results. | |
__construct(ManagerRegistry $registry) | ||
EntityLoaderInterface | getLoader(ObjectManager $manager, mixed $queryBuilder, string $class) Return the default loader object. | |
reset() |
Builds the form.
This method is called for each type in the hierarchy starting from the top most type. Type extensions can further modify the form.
FormBuilderInterface | $builder | The form builder |
array | $options | The options |
Builds the form view.
This method is called for each type in the hierarchy starting from the top most type. Type extensions can further modify the view.
A view of a form is built before the views of the child forms are built. This means that you cannot access child views in this method. If you need to do so, move your logic to {@link finishView()} instead.
FormView | $view | The view |
FormInterface | $form | The form |
array | $options | The options |
Finishes the form view.
This method gets called for each type in the hierarchy starting from the top most type. Type extensions can further modify the view.
When this method is called, views of the form's children have already been built and finished and can be accessed. You should only implement such logic in this method that actually accesses child views. For everything else you are recommended to implement {@link buildView()} instead.
FormView | $view | The view |
FormInterface | $form | The form |
array | $options | The options |
Configures the options for this type.
OptionsResolver | $resolver | The resolver for the options |
Returns the prefix of the template block name for this type.
The block prefix defaults to the underscored short class name with the "Type" suffix removed (e.g. "UserProfileType" => "user_profile").
string | The prefix of the template block name |
Returns the name of the parent type.
string|null | The name of the parent type if any, null otherwise |
Creates the label for a choice.
For backwards compatibility, objects are cast to strings by default.
object | $choice | The object |
string | The string representation of the object |
Creates the field name for a choice.
This method is used to generate field names if the underlying object has a single-column integer ID. In that case, the value of the field is the ID of the object. That ID is also used as field name.
object | $choice | The object |
int|string | $key | The choice key |
string | $value | The choice value. Corresponds to the object's ID here. |
string | The field name |
Gets important parts from QueryBuilder that will allow to cache its results.
For instance in ORM two query builders with an equal SQL string and equal parameters are considered to be equal.
object | $queryBuilder |
array|false | Array with important QueryBuilder parts or false if they can't be determined |
ManagerRegistry | $registry |
Return the default loader object.
ObjectManager | $manager | |
mixed | $queryBuilder | |
string | $class |
EntityLoaderInterface |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.html