Я работаю в php laravel framework и DMS.Я пытаюсь добавить настраиваемые поля формы на страницу, где поле формы может быть добавлено динамически.
в созданном классе Entity (Test.php)
$class->property($this->enquiryAdditionalFields)->asType(AdditionalFormFields::collectionType());
AdditionalFormFields является типом ValueObjectкласс, где я определил имя поля.
в созданном классе EntityMapper (TestMapper.php):
$map->embeddedCollection(TEST::ENQUIRY_ADDITIONAL_FIELDS)
->toTable('enquery_additional_field')
->withPrimaryKey('id')
->withForeignKeyToParentAs('event_id')
->using(new AdditionalFormFieldsMapper());
Класс AdditionalFormFieldsMapper:
class AdditionalFormFieldsMapper extends IndependentValueObjectMapper
{
/**
* @param MapperDefinition $map
* @throws \Dms\Core\Exception\InvalidArgumentException
*/
protected function define(MapperDefinition $map)
{
$map->type(AdditionalFormFields::class);
$map->property(AdditionalFormFields::FIELD_NAME)->to('field_name')->asVarchar(255);
}
}
при добавлениив новом поле из DMS я получаю сообщение об ошибке:
"Не удалось обработать исключение действия типа Doctrine \ DBAL \ Exception \ NotNullConstraintViolationException из действия 'edit': не найден соответствующий обработчик действия"