我对 Symfony2 完全陌生,但已经爱上了这个框架。
我有一个需要 3 种不同用户类型的项目。
一个是超级管理员,另外两个是普通用户,但配置文件布局不同。配置文件的不同布局意味着这两种用户类型的注册表必须在注册后在应用程序中具有不同的表单字段和不同的布局。
我想我已经有了注册后如何管理用户的想法(不知道以后会不会好)。但现在我不明白如何构建两个从 FOSUserBundle 扩展的不同注册表单。
据我了解,FOSUB 在设置注册的配置中只有一个点,并且不能有多个“注册:”
在 config.yml 我有:
fos_user:
db_driver: orm
firewall_name: main
user_class: Company\UserBundle\Entity\User
registration:
confirmation: { enabled: true }
安全性.yml:
security:
encoders:
FOS\UserBundle\Model\UserInterface: sha512
main:
pattern: ^/
form_login:
provider: fos_userbundle
csrf_provider: form.csrf_provider
logout: true
anonymous: true
我的想法是创建三个不同的包来扩展 FOSUB,但文档说只有一个包可以将 FOSUB 声明为父级。
另一种选择(来自文档)是扩展实现所有原始方法的 ContainerAware。但即使在这种情况下,我也不明白我必须如何配置 app/config/{config|security|routing}.yml 以拥有例如 /register_employee、/register_manager 链接,这些链接将使用 FOSUB 和我的自定义表单?
请指出我正确的方向。谢谢。