我在我的Yii2项目中有一个表单,我需要允许使用它创建多个模型。总的来说,我有一个组和多个人ActiveRecords,将使用该表单创建,并且每个Person记录都将属于该组。通过ActiveForm创建多个模型Yii2
例如,我有这个类的形式为:
<?php namespace app\models\forms;
class GroupForm extends yii\base\Model {
public $name;
public $description;
public $date;
public $people = [];
....
}
而且在视觉上也将与此类似:
我希望能够使用加和减号按钮可将其他人添加到表单中。我有JS来实际处理HTML克隆等,但我不确定如何创建第一个人。
我知道我需要的名称是Person[0][first_name]
,但是当我实例化GroupForm时,没有人创建对象(保存或在内存中),所以我不能做类似<?php echo $form->field($model->people[0], 'first_name')->textInput(); ?>
的事情。
提交表单之后,我计划对POST数据中的所有'People'字段进行迭代,并将其加载到新的People对象中。
是否有可能使用ActiveForm做到这一点,或者只是不使用ActiveForm并在Yii中使用Html类创建输入,然后使用JS来更改人员索引?
这绝对是我所想,但它看起来像有使我的错误无法使用,开发商没有在PR中解决问题https://github.com/wbraganca/yii2-dynamicform/pull/89 – kyle
@ kyle好的让我看看 –