2016-10-19 7 views
0

夫と妻であるお互いに1対1の関係にある2つのテーブルがあります。私は自分の値のドロップダウンリストを作成し、テーブルの夫からデータを取得しました。その値が選択されたときにドロップダウンリストには表示されません。多分、他の参考文献があるか、助けられるかもしれません。コードについては、下の画像を参照してください。ドロップダウンリストの値を選択しても表示されない場合

<?php 

use yii\helpers\Html; 
use yii\widgets\ActiveForm; 
use yii\helpers\ArrayHelper; 
use app\models\Husband; 

/* @var $this yii\web\View */ 
/* @var $model app\models\Wife */ 
/* @var $form yii\widgets\ActiveForm */ 
?> 

<div class="wife-form"> 

    <?php $form = ActiveForm::begin(); ?> 

    <?= $form->field($model, 'id_husband')->dropDownList(
     ArrayHelper::map(Husband::find()->where('status' => 0)->all(), 'id_husband', 'name'), 
     ['prompt' => 'Pilih']  
    ) ?> 

    <?= $form->field($model, 'name')->textInput(['maxlength' => true]) ?> 

    <?= $form->field($model, 'status')->dropDownList(['0' => 'Tidak Aktif', '1' => 'Aktif'], 
    ['prompt'=>'--Pilih--', 'style' => 'width:380px']) ?> 

    <div class="form-group"> 
     <?= Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?> 
    </div> 

    <?php ActiveForm::end(); ?> 

</div> 

答えて

0

mungkin KAU harus memakaiジャバスクリプト INI adalah contohビューさやダンコントローラ

<?php 
 

 
use yii\helpers\Html; 
 
use yii\widgets\ActiveForm; 
 
use yii\helpers\ArrayHelper; 
 
use backend\models\TahunAjaran; 
 
use backend\models\Mahasiswa; 
 
use backend\models\Matakuliah; 
 
/* @var $this yii\web\View */ 
 
/* @var $model backend\models\Dhs */ 
 
/* @var $form yii\widgets\ActiveForm 
 
*/ 
 

 
?> 
 

 
<div class="dhs-form"> 
 

 
    <?php $form = ActiveForm::begin(); ?> 
 

 
    <?= $form->field($model, 'id_tahun_ajaran')->dropDownList(ArrayHelper::map(TahunAjaran::find()->all(),'id','tahun_ajaran')) ?> 
 

 
    <?= $form->field($model, 'npm_mahasiswa')->dropDownList(ArrayHelper::map(Mahasiswa::find()->all(),'id','nama'), 
 
    ['prompt'=>'Pilih Mahasiswa', 
 
    'onchange'=>' 
 
       $.post("index.php?r=mahasiswa/lists&id='.'"+$(this).val(),function(data) 
 
       { $("select#dhs-user_id").html(data), $("select#nilai-1-nilai").html(data); 
 
      });' ] 
 
); ?> 
 

 

 
    <?= $form->field($model, 'user_id')->dropDownList(ArrayHelper::map(Mahasiswa::find()->all(),'id','user_id'), 
 
    ['prompt'=>'Pilih User Id', 
 
    ] 
 
); ?> 
 

 
<?= $form->field ($model,'semester')->dropDownList(ArrayHelper::map(Matakuliah::find()->all(),'id','semester'), 
 
['prompt'=>'Pilih Semester', 
 
'onchange'=>' 
 
$.post("index.php?r=matakuliah/lists&id='.'"+$(this).val(),function(data) 
 
{ 
 
$("select#dhs-id_matakuliah").html(data); 
 
});' ] 
 
); ?> 
 
    <?= $form->field($model, 'id_matakuliah')->dropDownList(ArrayHelper::map(Matakuliah::find()->all(),'id','id')) ?> 
 

 
    <?= $form->field($model, 'nilai')->dropDownList(['A' => 'A','B'=>'B','C' => 'C','D'=>'D','E' => 'E',]) ?> 
 

 
    <div class="form-group"> 
 
     <?= Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?> 
 
    </div> 
 

 
    <?php ActiveForm::end(); ?> 
 

 
</div>

controlller

\t public function actionLists($id){ 
 
     $countBranches = Mahasiswa::find() 
 
      ->where(['id'=>$id]) 
 
      ->count(); 
 
     $branches = Mahasiswa::find() 
 
      ->where(['id'=>$id]) 
 
      ->all(); 
 
     if($countBranches > 0) 
 
     { 
 
      foreach ($branches as $branch) { 
 
       echo "<option value'" .$branch->id. "'>".$branch->user_id."</option>"; 
 
      } 
 
     } 
 
     else 
 
     { 
 
      echo "<option>-</option>"; 
 
     } 
 
    } 
 
}

0

あなたはどこ条件の配列として言及するのを忘れてしまいました。

使用->where(['status' => 0])" instead of "->where('status' => 0)

だから、次のとおりです。

<?= $form->field($model, 'id_husband')->dropDownList(
     ArrayHelper::map(Husband::find()->where(['status' => 0])->all(), 'id_husband', 'name'), 
     ['prompt' => 'Pilih']  
    ) ?> 
+0

結果がエラーです。列が見つかりません:1054 'where句'内の 'status'が不明です 実行中のSQLがSELECT * FROM 'husband' WHERE' status' = 0でした。列 "status"の場合、夫ではなくテーブルの妻である。 – CrashBurn

+0

夫のテーブルにステータス列がありますか? – Satya

+0

私は夫のテーブルの欄と妻の欄は何ですか? – Satya

関連する問題