2014-11-05 15 views
0

我有一个表单接受用户名,密码和category_id(并将其存储到Doctrine“用户”实体中)。它在数据库中创建一个帐户,我使用验证器根据需要检查所有内容。现在我想扩展这种形式,以便我可以支持Facebook和Twitter登录(可能还有其他),所以我创建了一个新的实体UserLoginExternal,它将持有一个令牌和一个令牌提供程序。当用户提交FB登录表单时,他们提交用户名,category_id,令牌和提供者。我已经在验证器中创建了两个验证组 - register和register_without_password,但是我无法找到一种有效的方法来根据是否提交token字段在FormType中进行切换。Symfony Forms中的动态验证组 - 通过侦听器或默认选项?

你能指点我在Symfony文档中的位置,我可以通过一个例子找到关于它的信息。我阅读了表单类型中的监听器,但是我无法访问该请求以查看是否提交了标记字段。

+0

你如何区分密码之间NOPASSWORD登录?其他网站在登录页面上显示一个链接,该链接遭受替代登录。那两种不同类型的登录之间的切换怎么样? – SenseException 2014-11-05 21:04:07

+0

这实际上是一个用于认证用户的API--所以当令牌发送给它时,它将返回一个用户ID,与用户名/密码对一样。问题是如何在FormType中的单个表单上切换验证组,这取决于发送了哪些字段会触发不同的验证。 – 2014-11-06 21:39:46

回答

相关问题