Отображение двух полей в symfony2

0

Можно ли собирать и отображать два поля из формы в одно свойство?

Детали:

У меня есть поле массива в моей сущности:

@ORM\Column(name="custom", type="simple_array")

где администратор может указать (несколько вариантов) пользовательские параметры для продукта - например:

$product->setCustom( array('customText', 'customNumber') );

Таким образом, у пользователя должно быть два поля в его форме заказа - текст и номер. Затем я хочу их сохранить:

$order->setCustomOptions(array(
    'customText' => 'Foo',
    'customNumber' => '100',
    ));

В order сущности есть только массив типа поля вместо simple_array.

Пользователь не может добавлять новые параметры, поэтому тип поля коллекции не является хорошим выбором, на мой взгляд. Я также пытался использовать трансформатор данных, но я думаю, что он может применяться только к одному полю.

Скажи мне, если это не ясно. Мне не нужно полное решение, но подсказка, что выбрать.

  • 0
    Какой тип "simple_array"? Не могли бы вы предоставить определение пользовательского типа?
  • 0
    Это тип доктрины : doctrine-dbal.readthedocs.org/en/latest/reference/… . Мы можем предположить, что есть просто массив для простоты
Показать ещё 3 комментария
Теги:
mapping
doctrine2

1 ответ

0
Лучший ответ

Наконец, я создал два дополнительных поля в моей Entity (например, предложенный DonCallisto) без сопоставления с базой данных и отобразил их в форме. Затем вместо использования DataTransforem я использовал setter с @ORM\PrePersist и @ORM\PreUpdate для установки пользовательских значений вместе.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню