84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
比如后台管理界面,有没有那种直接根据一个字段名来生成表单的插件,看过一些cms系统,数据库存入该表单类型,就可以直接出来表单,其原理如何,或者说有没有专门干这个,htmlbuilder什么的
认证高级PHP讲师
这个插件还没注意到,但是一般框架都支持,根据模型(数据库表)配置来直接生成表单的,比如Yii2框架就有这个类,是基于Bootstrap框架改造的,你可以自己去借鉴。
类似这样,当然这个改了一下,不是默认的样子了。
<?php /* @var $this \yii\web\View */ /* @var $form \yii\widgets\ActiveForm */ /* @var $model \common\models\Article */ use yii\helpers\Html; use yii\widgets\ActiveForm; $this->registerCss(' .text { width : 100%; height : 500px; } '); ?> <p class="site-form"> <?php $form = ActiveForm::begin(['options' => [' name' => 'frm']]); ?> <?php echo $form->field($model, 'title')->textInput()->label('文章标题'); ?> <?php echo $form->field($model, 'type')->radioList(\common\base\Navigation::getInstance()->getNavigationKV())->label('文章类型'); ?> <?php echo $form->field($model, 'content')->textarea(['class' => 'text'])->label('文章内容'); ?> <?php echo $form->field($model, 'summary')->textarea()->label('摘要'); ?> <?php echo $form->field($model, 'remark')->textarea(['rows' => 4])->label('备注'); ?> <?php echo $form->field($model, 'status')->radioList(\common\base\Article::getInstance()->getStatusKV())->label('状态'); ?> <p class="form-group"> <?php echo Html::submitButton($model->isNewRecord ? '添加' : '编辑', ['class' => 'btn btn-success']); ?> </p> <?php $form->end(); ?> </p>
这个插件还没注意到,但是一般框架都支持,根据模型(数据库表)配置来直接生成表单的,比如Yii2框架就有这个类,是基于Bootstrap框架改造的,你可以自己去借鉴。
类似这样,当然这个改了一下,不是默认的样子了。