2012-07-02 14 views
8

Mam multiple select-list-box dla Staff w Create-Service-Form, używane do wybierania wielu pracowników podczas tworzenia nowej usługi. do tego mogę przypisać wielu pracowników do jednej usługi.Jak wczytać wybrane elementy listy do wielu-selectbox w widoku aktualizacji w yii?


Uratowałem staff_id boiska:
$model->staff_id = serialize($model->staff_id);


tu update-view kodu stwardnienia-select-lista-box:

<div class="row"> 
    <?php echo $form->labelEx($model,'staff_id'); ?> 
    <?php 
      $data = array('1' => 'Sam', '2' => 'john', '3' => 'addy'); 
      $htmlOptions = array('size' => '5', 'prompt'=>'Use CTRL to Select Multiple Staff', 'multiple' => 'multiple'); 
      echo $form->ListBox($model,'staff_id', $data, $htmlOptions); 
    ?> 
    <?php echo $form->error($model,'staff_id'); ?> 
</div> 

Problem jest, gdy załadować formularz do aktualizacji usługi. jak wybrać tych pracowników, którzy są wcześniej zapisani w bazie danych?

Próbowałem this dropDownList-attributes, ale nie działa.
$ wybierz | ciąg | wybrana wartość

jeśli ktoś ma rozwiązanie, to zasugeruj mi. Dzięki All Mates ...

Odpowiedz

12

Oto krótki kod, który napisałem dla Ciebie, jego przykład, który pomoże Ci zrozumieć, jak to działa.

<div class="row"> 
    <?php echo $form->labelEx($model,'staff_id'); ?> 
    <?php 
    $data = array('101' => 'Faraz Khan', '102' => 'Depesh Saini', '103' => 'Nalin Gehlot', '104' => 'Hari Maliya'); 
    $selected = array(
     '102' => array('selected' => 'selected'), 
     '103' => array('selected' => 'selected'), 
    ); 
    $htmlOptions = array('size' => '5', 'prompt'=>'Use CTRL to Select Multiple Staff', 'multiple' => 'true', 'options' => $selected); 
    echo $form->listBox($model,'staff_id', $data, $htmlOptions); 
    ?> 
    <?php echo $form->error($model,'staff_id'); ?> 
</div> 

Baw się dobrze!

+0

To doskonały annuser, dzięki tobie kolega ... – Frank

+0

Każda prosta metoda to zrobić z wartościami z bazy danych. Głównie master-detail. – Vijay

+0

Nie działa ... żadne wartości nie są wstępnie wybrane ... –