2012-08-10 17 views
9

Me estoy familiarizando con Symfony 2, después de usar Symfony 1.x durante algunos años.Administración de usuarios de Symfony2, ¿usar FOSUserBundle o usar el código de Cookbook de Symfony como punto de partida?

Necesito crear un sitio web de membresía que tenga un proceso de registro personalizado. Además, el sitio web genera dinámicamente funciones de usuario (anteriormente credentials en SF v1.x) para restringir el acceso a partes del sitio.

He echado un vistazo al FOSUserBundle y no puedo ver lo que ofrece más allá del código que está disponible en el enlace 'How to load users from a database' en el libro de cocina. Tengo una gran cantidad de lógica personalizada involucrada en mi registro de usuario y gestión de usuarios, como mencioné anteriormente, y no quiero pasar por una curva de aprendizaje de usar FOSUserBundle para tener que anular muchos de los métodos, etc., con la mía métodos personalizados

No sé lo suficiente sobre Symfony2 para tomar la decisión en cuanto a si para aprender del código de libro de cocina y extenderlo en mi propia UserBundle, o invertir tiempo en aprender cómo utilizar el FOSUserBundle y personalizarlo con mi encargo lógica.

En resumen, esto es lo que quiero hacer con los usuarios:

  1. Proporcionar un flujo de trabajo de registro personalizada
  2. actualizar dinámicamente una pertenencia a la función usuarios/grupo (inicialmente durante inicio de sesión, y posteriormente, durante la sesión) .

Mi pregunta es, entonces, qué curso requiere la curva de aprendizaje y el esfuerzo mínimos (tengo menos de una semana para poner en funcionamiento un sitio barebones) y solo estoy desarrollando sitios web en mi tiempo libre)

Do I:

  • escribir mi propia UserBundle, utilizando el código en el cookbook como punto de partida
  • Información sobre cómo utilizar FOSUserBundle y personalizarlo con mi lógica personalizada? (Ver más arriba)
+0

¿Qué opción eligió y cuál es su opinión ahora tres años después? –

Respuesta

1

FOSUserBundle dispone:

  • User y Group implementaciones
  • controladores con características útiles (registro, la contraseña perdida)
  • vistas

si necesita estos características, use este paquete, ¡ahorrará su tiempo!

No sé cuán compleja es su lógica de autenticación, pero estoy bastante seguro de que puede encajar con la de FOSUserBundle.

22

Es un tema viejo pero todavía muy interesante hoy en día. No estoy de acuerdo con la respuesta de Florent, porque creo que no proporciona una visión objetiva.

FOSUserBundle proporciona implementaciones de usuarios y grupos, tal como Symfony ya proporciona, que solo necesita configurar.El libro de cocina y el documento oficial le permitirán trabajar en menos de un día.

Los controladores de "lleno de características" son interesantes ... siempre que se mantenga en la forma definida por este paquete. No seas demasiado original o pasarás días anulando el código y la configuración del paquete. Honestamente, el registro y la contraseña perdida son fáciles de implementar, y el mecanismo de formulario SF2 ya facilita el manejo de errores.

Las vistas son minimalistas y poco interesantes desde FOSUserBundle, haga las suyas propias.

Si tuviera que comparar ambas curvas de aprendizaje simplemente lo resumiría así: ambas tardan el mismo tiempo para lograr un complejo sistema de administración de usuarios, pero usted tendrá mucho más control de su código cuando escriba su propio proveedor.

Sería interesante, 2 años después, saber qué elección hizo y cómo fue, Homunculus Reticulli.

Cuestiones relacionadas