Symfony2 FOSUser在表单中有多个地址

时间:2015-09-18 07:25:15

标签: php forms symfony fosuserbundle

当公司注册时,他们会插入他的主办公室地址数据。此数据仅保存在USer实体中。但是,如果公司有更多的办公室,他应该能够在同一表格上添加它们,但是可以添加到不同的实体。这甚至可能吗?如果没有,有什么选择。

例如:

当用户进入注册时,表单将打开:

public function buildForm(FormBuilderInterface $builder, array $options)
{
    parent::buildForm($builder, $options);
    $builder

        ->add('country', 'country', array(
            'label' => 'form.label.country',
            'required' => false,
        ))
        ->add('town', 'text', array(
            'label' => 'form.label.town',
            'required' => false,
        ))

        >add('residence', 'text', array(
            'label' => 'form.label.adress',
            'required' => false,
        ))
        ->add('zip', 'text', array(
            'label' => 'form.label.zip',
            'required' => false,
        ))

这保存在用户类中。

如果用户有更多办公室,则应显示其他字段,用于将新数据存储到其他实体。

UserAdress实体:

class UserAdress
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var integer
     *
     * @ORM\Column(name="id_user", type="integer")
     */
    private $idUser;

    /**
     * @var string
     *
     * @ORM\Column(name="office_name", type="string", length=255)
     */
    private $officeName;

    /**
     * @var string
     *
     * @ORM\Column(name="Adress", type="string", length=255)
     */
    private $adress;

    /**
     * @var string
     *
     * @ORM\Column(name="country", type="string", length=255)
     */
    private $country;

    /**
     * @var string
     *
     * @ORM\Column(name="town", type="string", length=255)
     */
    private $town;

    /**
     * @var string
     *
     * @ORM\Column(name="zip", type="string", length=255)
     */
    private $zip;

现在我需要在同一个注册表单中使用这些字段呈现一个新表单......这可能吗?

0 个答案:

没有答案