2016-04-13 14 views
1

,Açılır Listesi? Benim Modeli Kodlama My görünüm sayfasında

$cpfTabledropdown = ManageConfiguration::getModulesetting(); 
    echo $form->dropdownList($useraccount, 'skill_type', $cpfTabledropdown, array('class' => 'form-control', 'prompt' => 'Select SKill Type', 'disabled' => $useraccount->id_type == 3 ? false : true)); 

:

public static function getModulesetting() { 
    $models = HrmoduleSettings::model()->findAll('type="6"'); 
    return CHtml::listData($models, 'id', 'name'); 
} 

Şimdi sütun Subcat kullanarak bazı statik verileri concat adına bu dönüş listData istiyorum ben, bu o statik verileri Concat nasıl yii'de ad döndürme değeri PHP kodlaması,

Aşağıda yer alan PHP'de kodlamada YII.Its kodlaması gibi açılır menü verileri gösterilmek istiyorum. Php Kodlama çalışması iyi, Fakat YII.IS'de nasıl yazılacağını bilmiyorum YII'de aşağıdaki PHP kodlamasını yazınız mı?

<select name ="UserAccount[skill_type]"> 
    <?php 
    foreach ($cpfTabledropdown as $models) { 
    if ($models->subcat_type == 1) 
     { 
     $cate = "Skilled"; 
     } 
     else { 
     $cate = "Unskilled"; 
     } 
     ?> 
     <option value ="<?php echo $models->id; ?>"><?php echo $cate . " " . $models->name; ?></option> 
    <?php 
     } 
     ?> 
     </select> 
+0

Neden bunu yapmak için getModuleSetting işlevinin yeni bir sürümünü oluşturmuyorsunuz? – topher

cevap

0

kullanın bu şekilde:

public static function getModulesetting() { 
    $models = HrmoduleSettings::model()->findAll('type="6"'); 
    return CHtml::listData($models, 'id', 
      function($models) { 
      $cate = "What Ever"; // $cate content 
      return $cate . ' ' . $models->name; 
    }); 
} 
0

Sen görünümünde verilerle ilgili kod ekleyerek önleyebilirsiniz, böylece HrmoduleSettings sınıfındaki bir alıcı oluşturabilirsiniz.

public function getNameWithCategory() 
{ 
    if ($this->subcat_type == 1) 
     return "Skilled " . $this->name; 
    else 
     return "Unskilled " . $this->name; 
} 

Artık CHtml::listData() çağrısına küçük bir değişiklik yapmak zorunda:

CHtml::listData($models, 'id', 'nameWithCategory'); 

Ve işte bu kadar

sizin HrmoduleSettings sınıfında aşağıdaki yöntemi ekleyin!

İlgili konular