Ich versuche, eine Auswahlbox zu einem meiner Formulare hinzuzufügen (was nur mit Input Type = "Text" -Elementen funktioniert ziemlich gut), aber alles ich get ist nur eine leere Auswahlbox mit keinen Tags darin. Das ist also der Code, den ich verwenden:Zend Framework 2: Der Versuch, eine Auswahlbox zu einem Formular hinzuzufügen, rendert keine Werte
Bla.php :: Bla-> getInputFilter()
$inputFilter->add($factory->createInput(array(
'type' => 'Zend\InputFilter\Select',
'name' => 'payment_type',
'required' => true,
'filters' => array(
array('name' => 'Int'),
),
)));
BlaForm.php :: BlaForm -> __ construct():
$this->add(array(
'type' => 'Zend\Form\Element\Select',
'name' => 'payment_type',
'options' => array(
'label' => 'Payment',
'value_options' => array(
0 => 'Nur Überweisung',
1 => 'Nur Paypal',
2 => 'Nur Barzahlung im Voraus',
),
),
'attributes' => array(
'value' => 0 //set selected to "Nur Überweisung"
)
));
bla .php (Ansicht)
<div class="control-group">
<?php
echo $this->formLabel($form->get('payment_type')->setLabelAttributes(array(
'class' => 'control-label'
)));
?>
<div class="controls">
<?=$this->formElement($form->get('payment_type'));?>
<span class="help-inline"><?=$this->formElementErrors($form->get('payment_type'));?></span>
</div>
</div>
ich habe bereits versucht mit „Optionen“ anstelle von „value_options“ und gestern habe ich gelernt, dass es nur ein Alias von „value_options ist ". Auch ich habe formSelect() anstelle von formElement() in meiner Ansicht versucht, aber das ändert auch nichts. Ich habe sogar die Umlaute von den Strings für Testzwecke entfernt ...
Hat jemand das gleiche Problem oder hat eine Idee, was ich gerade falsch mache?
Mit 2.0.2 funktioniert mein Code von oben wie ein Zauber. Danke, dass du einen Blick darauf geworfen hast und mich darauf aufmerksam gemacht hast. – pebbo