0

我建立了自己的注册表单,当我尝试注册用户时,它没有反应。FOSUserBundle 的一切工作都很好。此外,当我使用默认的 FOSUserBundle 注册表单时,它可以工作并将所有数据保存在我的表中。我应该只使用 FOSUserBundle 中的默认表单还是什么?

这是我制作的表格:

<form action="{{ path('fos_user_registration_register') }}" method="post">
    <p>
        <input type="text" name="name"/>
    </p>
    <p>
        <input type="text" name="surname" />
    </p>
    <p>
        <input type="text" name="email"  />
    </p>
    <p>
        <input type="password" name="password"/>
    </p>
    <p>
        <input type="submit" name="submit" value="Sign up"/>
    </p>
</form>
4

2 回答 2

0

如果您需要扩展功能,请阅读文档如何覆盖注册控制器。或者您可以覆盖标准表单以添加其他字段。

于 2013-08-01T15:04:20.023 回答
0

您需要将注册表单从控制器(如果您要覆盖控制器)传递到视图,以使 csrf 令牌可用。否则表单将无法验证。

为了覆盖 FOSUserBundle 的标准注册表单,请使用捆绑继承

请阅读 FOSUserBundle 的文档章节Overriding Default FOSUserBundle Forms

如果您只想将“姓名”和“姓氏”添加到您的用户实体,请添加属性和映射信息,然后将字段添加到覆盖的表单类。如果您需要进一步更改,则覆盖 FOSUserBundle 提供的注册表单模板。

于 2013-08-01T15:01:56.797 回答