繁体   English   中英

使用Symfony2身份验证存储多个对象

[英]Store multiple objects with Symfony2 authentification

我在数据库中有这些表:

user:
- email
- lastname
- firstname
- password

userType1:
- fkUser
- specialCol1
- specialCol2

userType2:
- fkUser
- specialCol1
- specialCol2

我已经使Symfony2身份验证服务与user表一起工作,但是我想在会话中存储(或在其他地方通过身份验证管理)关联的对象: userType1userType2

此外,我想根据用户的类型将用户重定向到其帐户。

所以我的问题是:

提交认证表格后如何处理? (以确定它是哪种类型的用户)

如何告诉Symfony在身份验证上下文中管理其他对象(用户类型)?

看一看Cookbook条目“ 如何从数据库加载安全用户” “使用自定义实体提供程序对某人进行身份验证”和“管理数据库中的角色”部分可能会有所帮助。

我在身份验证过程中遇到了类似的问题,该过程要求用户及其租户成员身份。 我建立了一个自定义提供程序,该提供程序基本上看起来像食谱中的提供程序。 序列化User时,我仅使用某些字段(id,username,email),其余数据通过提供程序的refreshUser() ,在此处再次通过QueryBuilder获取User及其关系。 我遇到的问题是,在会话中序列化User时,否则关系“丢失”,而我必须一直重新获取User。

之后,基本上就是@BenjaminPaap编写的内容。 按照文档中的说明检索用户并获取用户类型等。

如果要根据用户的userType将用户重定向到某个目标,则可能需要查看“ 如何创建自定义UserProvider ”。 侦听器提供登录后立即根据用户类型重定向用户所需的一切。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM