spot7.org logo
Home PHP C# C++ Android Java Javascript Python IOS SQL HTML Categories

symfony : can't we have a hidden entity field?


I think you are simply confused about the field types and what they each represent.

An entity field is a type of choice field. Choice fields are meant to contain values selectable by a user in a form. When this form is rendered, Symfony will generate a list of possible choices based on the underlying class of the entity field, and the value of each choice in the list is the id of the respective entity. Once the form is submitted, Symfony will hydrate an object for you representing the selected entity. The entity field is typically used for rendering entity associations (like for example a list of roles you can select to assign to a user).

If you are simply trying to create a placeholder for an ID field of an entity, then you would use the hidden input. But this only works if the form class you are creating represents an entity (ie the form's data_class refers to an entity you have defined). The ID field will then properly map to the ID of an entity of the type defined by the form's data_class.

EDIT: One solution to your particular situation described below would be to create a new field type (let's call it EntityHidden) that extends the hidden field type but handles data transformation for converting to/from an entity/id. In this way, your form will contain the entity ID as a hidden field, but the application will have access to the entity itself once the form is submitted. The conversion, of course, is performed by the data transformer.

Here is an example of such an implementation, for posterity:

namespace MyBundleFormExtensionType;

use SymfonyComponentFormAbstractType;
use SymfonyComponentFormFormBuilderInterface;
use SymfonyComponentFormDataTransformerInterface;

/**
 * Entity hidden custom type class definition
 */
class EntityHiddenType extends AbstractType
{
    /**
     * @var DataTransformerInterface $transformer
     */
     private $transformer;

    /**
     * Constructor
     *
     * @param DataTransformerInterface
$transformer
     */
    public function
__construct(DataTransformerInterface $transformer)
    {
        $this->transformer = $transformer;
    }

    /**
     * @inheritDoc
     */
    public function buildForm(FormBuilderInterface
$builder, array $options)
    {
        // attach the specified model transformer
for this entity list field
        // this will convert data between object
and string formats
       
$builder->addModelTransformer($this->transformer);
    }

    /**
     * @inheritDoc
     */
    public function getParent()
    {
        return 'hidden';
    }

    /**
     * @inheritDoc
     */
    public function getName()
    {
        return 'entityhidden';
    }
}

Just note that in the form type class, all you have to do is assign your hidden entity to its corresponding form field property (within the form model/data class) and Symfony will generate the hidden input HTML properly with the ID of the entity as its value. Hope that helps.


Categories : PHP

Related to : symfony : can't we have a hidden entity field?
Symfony DI injects an empty array instead of entity manager object
This fails because Symfony is passing the options array expected by the parent Constraint class. You need to split your validator into two classes: one annotation class, and one that does the actual validation. /** @Annotation */ class UniqueBookingDate extends Constraint { public function validatedBy() { return 'unique_booking_date_validator'; } } Now set up a service call

Categories : Symfony2
How to append values to hidden field?
This code is from jQuery docs for :selected (with slight modification): $("select") .change(function() { var count = $("select option:selected").length; // Count selected $("input").val(count); // Update field }) .trigger("change"); // Trigger at least once select{ height:100px; width:100px; } <script src="//code.jquery

Categories : Javascript
jQuery select child node (hidden field) within table cell
This should work for you: $('.btnSettingsToggle').click(function () { // Get hidden value that's inside this click var hiddenValue = $(this).find('#hdnEnquirerDetailsPopup').val(); });

Categories : Jquery
random error symfony:ContextErrorException: Warning: simplexml_load_file(): I/O warning : failed to load external entity
Hi @Julien FOSUser issue#1062 and symfony2 issue#7291 will help to resolve your problem.

Categories : PHP
Jersey issue with unmarshalling responce entity with HashSet field
The problem is that while serializing, you're probably using MOXy which adds the additional wrapping element (roles in this case) which is not fully supported by Jackson. You can either use MOXy for de-serialization at the client side Client client = ClientBuilder .newClient() .register(authenticationFeature) .register(MoxyJsonFeature.class); or to slightly

Categories : Java
Recently Add
Cartesian product of associative array showing key and value - PHP
Datamapper orm save and update not working
find methods in COM object
PHP Keyword search not working with multiple words
Set a total based on items ordered, two types, and sometimes one type will not be ordered.
FB request to join a group, going around their official SDK
Using Google charts with php data?
OAuth2 integration with ExactOnline
libvirt-php receives the error: unable to connect to server Permission denied
How to echo results by sets of 2?
Why does PHP's sprintf not round 5s reliably?
php replace affects on replaced string
PHP Find and replace multiple similar entries
Replace PHP date output with pre-made images
How to install Laravel 4 packages on Windows
Using updateOrCreate for multiple data insert in Laravel
Storing products in a MYSQL database and then search and filter them?
Create order with PrestaShop's API
how to get latest messages from all users
Yii CMultiFileUpload Restrict Image width
Combine array by key factor
Semicolon after if condition in PHP - code still works
Get date using day of the week
soap web service with symfony
Seasonal Reservation system Day/month
is it possible to join a single table it self?
Attempting to compare two arrays PHP
Sticky Select Option
Eventbrite duplicate event entry
Pagination Not Working on custom post type in Wordpress
© Copyright 2017 spot7.org Publishing Limited. All rights reserved.