symfony2: null date rendering symfony2: null date rendering symfony symfony

symfony2: null date rendering


With modern version of Symfony you seem to need:

$builder->add('dueDate', DateType::class, array(    'placeholder' => ['year' => '--', 'month' => '--', 'day' => '--'])

empty_value has been replaced by placeholder and you need to pass an array with each "empty" value.


You can solve this way:

$builder->add('dueDate', 'date', array(   'label'=>'Due date',    'empty_value' => array('----'),   'required'=>false))

You were close to the solution.


I did not want to render the form by myself, but as I was already doing that due to an unrelated issue, I developed some kind of fix:

[edit.html.twig]   <div class="entry {% if not entity.dueDate %}nullabledate{% endif %}">     {{ form_label(form.dueDate) }}     {{ form_errors(form.dueDate) }}     {{ form_widget(form.dueDate) }}</div>

[add to some javascript file]

jQuery(document).ready(function() {  var nullDate = function(id) {    $(".nullabledate select").each(function(key,elem){      $(elem).val('');    })  }  nullDate();}