Добрый день.
Суть в том, что есть страница, на ней пользователь неким образом создает формы и размещает их на одной странице. Соответственно, пользователь может дать любое имя для поля.
Каким образом можно обработать такую страницу с несколькими формами с неизвестными названиями полей?
Например, когда мы делаем обработку одной формы с известными полями то это выглядит так:
Модель формы, где задаются нужные поля и правила валидации:<?php
namespace app\models;
use yii\base\Model;
class EntryForm extends Model
{
public $name;
public $email;
public function rules()
{
return [
[['name', 'email'], 'required'],
['email', 'email'],
];
}
}
И обработка в контроллере:<?php
namespace app\controllers;
use Yii;
use yii\web\Controller;
use app\models\EntryForm;
class SiteController extends Controller
{
// ...существующий код...
public function actionEntry()
{
$model = new EntryForm();
if ($model->load(Yii::$app->request->post()) && $model->validate()) {
// данные в $model удачно проверены
// делаем что-то полезное с $model ...
return $this->render('entry-confirm', ['model' => $model]);
} else {
// либо страница отображается первый раз, либо есть ошибка в данных
return $this->render('entry', ['model' => $model]);
}
}
}
Так вот, а что если эти поля неизвестны и их может быть разное количество?