本人新手,请问为每个页面都添加一个可以新增数据的模态框需要怎么实现?

新手提问 · gyyanan · 于 3个月前 发布 · 370 次阅读

问题描述:我想让每个页面都有一个添加数据的按钮,点击按钮可开模态框进行添加数据。 我目前是这样实现的: 控制器

public function actionIndex()
    {
        $model = new Post();
        $model->user_id = Yii::$app->user->identity->user_id;
        if ($model->load(Yii::$app->request->post()) && $model->save()) {
            $model = new Post();
        }
        $searchModel = new PostSearch();
        $dataProvider = $searchModel->search(Yii::$app->request->queryParams);

        return $this->render('create', [
            'searchModel' => $searchModel,
            'dataProvider' => $dataProvider,
            'model' => $model,
        ]);
    }

视图

<button type="button" class="btn btn-danger" data-toggle="modal" data-target="#addModal"> 添加 </button>
<div class="post-form">
<?= GridView::widget([
        'dataProvider' => $dataProvider,
        'filterModel' => $searchModel,
        'columns' => [
            ['class' => 'yii\grid\SerialColumn'],
            'post_text',
            ['class' => 'yii\grid\ActionColumn'],
        ],
    ]); ?>
<div id="addModal" class="modal fade" role="basic" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-body">
            <?php $form = ActiveForm::begin(['options' => ['data-pjax' => true ]]); ?>
            <?= $form->field($model, 'post_text')->textInput(['maxlength' => 200]) ?>
            <div class="form-group">
                <?= Html::submitButton($model->isNewRecord ? Yii::t('app', 'Create') : Yii::t('app', 'Update'), ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
            </div>
            <?php ActiveForm::end(); ?>
            </div>
        </div>
    </div>
</div>

问题:这样做需要为每个页面添加相同的代码,有什么简单高效的方法吗? 注:代码可能有错误,主要是问问思路

共收到 2 条回复
forecho#13个月前 0 个赞

不是很明白你意思

li1184931253#23个月前 0 个赞

那你直接写在配置模板里写上这个不就行了 然后你在别的地方引入就行了?

添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册