我需要yii2高级模板中使用的kartik选择小部件的帮助。 数据正在被正确获取,我可以使用print_r函数打印它。
<?php
$facultiesData = Faculties::find()
->select(['faculty_id','faculty_name'])
->asArray()
->all();
$facultiesData = ArrayHelper::map( $facultiesData, 'faculty_id','faculty_name' );
print_r($facultiesData); //print values on screen
?>
问题是,这些数据没有在kartik select widget
的表单字段中填充
<?= $form->field($model, 'faculty_id')->widget(Select2::classname(), [
'data' => $facultiesData,
'language' => 'en',
'options' => ['placeholder' => 'choose property ...'],
'pluginOptions' => [
'allowClear' => true
],
]);
?>
提前致谢。我会感谢任何领导或帮助
答案 0 :(得分:0)
我解决了这个问题。在代码中
<?php
$facultiesData = Faculties::find()
->select(['faculty_id','faculty_name'])
->asArray()
->all();
$facultiesData = ArrayHelper::map( $facultiesData, 'faculty_id','faculty_name' );
print_r($facultiesData); //print values on screen
?>
我删除了&#34; - &gt; select() - &gt; asArray()以保留find() - &gt; all()&#34;
函数asArray()将值返回为[34 =&gt;&#34;任何&#34;]但是小部件需要数据为34 =&gt;&#34;任何&#34;至于我的理解。