_form.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. use common\modules\rbac\AutocompleteAsset;
  3. use common\modules\rbac\models\Menu;
  4. use yii\helpers\Html;
  5. use yii\helpers\Json;
  6. use yii\widgets\ActiveForm;
  7. /* @var $this yii\web\View */
  8. /* @var $model rbac\models\Menu */
  9. /* @var $form yii\widgets\ActiveForm */
  10. ?>
  11. <div class="box box-primary">
  12. <div class="box-body">
  13. <?php $form = ActiveForm::begin(); ?>
  14. <?= $form->field($model, 'name')->textInput(['maxlength' => 128]) ?>
  15. <?= $form->field($model, 'parent')->dropDownList($model::getDropDownList(\common\helpers\Tree::build($model::find()->asArray()->all(), 'id', 'parent', 'children', null)), ['encode' => false, 'prompt' => '请选择']) ?>
  16. <?= $form->field($model, 'route')->textInput(['id' => 'route']) ?>
  17. <?= $form->field($model, 'icon')->widget(\backend\widgets\iconpicker\IconPickerWidget::className()) ?>
  18. <?= $form->field($model, 'order')->input('number') ?>
  19. <?= $form->field($model, 'data')->textarea(['rows' => 4]) ?>
  20. <div class="form-group">
  21. <?= Html::submitButton($model->isNewRecord ? Yii::t('rbac', 'Create') : Yii::t('rbac', 'Update'), ['class' => 'btn btn-flat btn-block bg-maroon']) ?>
  22. </div>
  23. <?php ActiveForm::end(); ?>
  24. </div>
  25. </div>
  26. <?php
  27. AutocompleteAsset::register($this);
  28. $options = Json::htmlEncode([
  29. 'source' => Menu::getSavedRoutes(),
  30. ]);
  31. $this->registerJs("$('#route').autocomplete($options);");