Форма Symfony и конструктор сущностей

Я хочу создать сущность (Doctrine) из формы Symfony.

Но я могу создать только следующую запись:

$country = new Country($iso2Code = 'US');
$country->setIso3Code('USA');
$country->setName('United States of America');

Установить свойства следующим образом я не могу:

$country = new Country();
$country->setIso2Code('US');
$country->setIso3Code('USA');
$country->setName('United States of America');

Ссылка на этот класс: https://github.com/orocrm/platform/blob/master/src/Oro/Bundle/AddressBundle/Entity/Country.php

Я не могу изменить исходный код этого класса (конечно, могу, но это плохая практика — изменять сторонний код).

Я не хочу расширять этот класс, так как он создает много других проблем (в этом случае я не могу использовать элементы, которые зависят от этого класса).

А также!!! Установка значения через конструктор — неплохо!

Но как я могу создать форму Symfony 2 для этой сущности?

0

Решение

Если исходный код не соответствует вашим потребностям, просто измените его и создайте форк репозитория на github: https://github.com/orocrm/platform/fork

а потом :

     public function __construct()
{
$this->regions  = new ArrayCollection();
}

/**
* Get iso2_code
*
* @return string
*/
public function getIso2Code()
{
return $this->iso2Code;
}

public function setIso2Code($iso2Code)
{
$this->iso2Code = $iso2Code;

return $this;
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]