Как передать идентификатор из FormBuilder другому лицу?

У меня есть сущность "Контракт" и другая сущность "Валюта".
Как передать идентификатор валюты моего юридического лица в мой договор с юридическим лицом?

Для каждого есть идентификатор валюты, и этот идентификатор должен быть вставлен в мой сущностный контракт с помощью FormBuilder, в поле "currency_id" в табличном договоре. Есть одно отношение сущности "Контракт" и сущность "Валюта". Нет способа спасти идентификатор валюты у FormBuilder Контракта? Я искал документацию, но ничего не нашел!

Вот код моего конструктора форм:

 public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('currency_id', 'choice', array('label' => 'Moeda:', 'choices'  => array(''=>'', 1 => 'BRL', 2 => 'USD', 3 => 'EUR'), 'required' => true))
            ->add('safeExpenses', 'checkbox', array('label' => 'Seguro de Despesas:'))
            ->add('valueSafeExpenses', 'text', array('label' => 'Valor:'))
            ->add('safeTax', 'checkbox', array('label' => 'Seguro de Impostos:'))

        ;
    }

Я бы вставил CURRENCY_ID -> 1 - BRL, в моей таблице Контракт, в поле (столбец) "currency_id"

Мой контроллер:

public function createAction(Request $request)
    {
        $em = $this->getDoctrine()->getManager();
        $customer = $em->getRepository('FidcargoPortalBundle:Customer')->findAll();
        $currency = $em->getRepository('FidcargoPortalBundle:Currency')->findAll();
        $entity = new Contract();
        $entity ->setDtContract = (new \DateTime());

        $form = $this->createCreateForm($entity);
        $form->handleRequest($request);

        if ($form->isValid()) {
            $entity ->setRegistrationStatus(Contract::AGUARDANDO_APROVACAO);
            $customer = $em->getRepository('FidcargoPortalBundle:Customer')->find($request->get('customer_id'));
            $customer = $em->getRepository('FidcargoPortalBundle:Currency')->find($request->get('currency_id'));
            $entity ->setCustomer($customer);
            $entity ->setCurrency($cusrrency);

            $em->persist($entity);
            $em->flush();

            return $this->redirect($this->generateUrl('contract_approve', array(
                'customer' => $customer,
                'id' => $entity->getId())));
        }

0 ответов

Другие вопросы по тегам