bupy7 / yii2-dynamic-fields
该软件包已被废弃,不再维护。未建议替代软件包。
用于显示动态字段、添加和删除它们使用的 Pjax 小部件。
1.0.2
2018-03-26 05:36 UTC
Requires
- yiisoft/yii2: ^2.0
- yiisoft/yii2-bootstrap: ^2.0
This package is auto-updated.
Last update: 2021-04-11 06:54:29 UTC
README
用于显示动态字段、添加和删除它们使用的 Pjax 小部件。
安装
安装此扩展的首选方式是通过 Composer。
运行以下命令之一
php composer.phar require --prefer-dist bupy7/yii2-dynamic-fields "*"
或
"bupy7/yii2-dynamic-fields": "*"
将以下内容添加到您的 composer.json
文件的 require 部分。
用法
将以下代码添加到您的视图中
use yii\helpers\Html; use yii\widgets\ActiveForm; use bupy7\dynafields\DynaFields; $form = ActiveForm::begin(['action' => ['index']]); echo DynaFields::widget([ 'urlAdd' => ['your-action-add'], 'urlRemove' => ['your-action-remove'], 'inputMethod' => 'textInput', 'inputMethodArgs' => [['maxlength' => true]], 'form' => $form, 'models' => $models, 'attribute' => 'attribute', ]); echo Html::submitButton('Save', ['class' => 'btn btn-success']); ActiveForm::end();
将以下代码添加到您的控制器中
use Yii; use yii\base\Model; /** * Render form. */ public function actionIndex() { $models = ModelName::find()->all(); if (Model::loadMultiple($models, Yii::$app->request->post()) && Model::validateMultiple($models)) { for ($i = 0; $i != count($models); $i++) { $models[$i]->save(false); } return $this->redirect(['index']); } return $this->render('index', ['models' => $models]); } /** * Create new model. */ public function actionYourActionAdd() { $model = new ModelName; $model->save(false); return $this->actionIndex(); } /** * Delete model. * @param int $id */ public function actionYourActionRemove($id) { ModelName::findOne($id)->delete(); return $this->actionIndex(); }
##许可证
yii2-dynamic-fields 在 BSD 3-Clause 许可证下发布。