Me preguntaba si de alguna manera es posible agregar otro controlador de abstracción entre AppController y otros controladores de mi aplicación.Cakephp: ¿Resumiendo AppController otro nivel, posible?
Para que mis controladores, p. UsersController extiende SecureController y SecureController extiende AppController.
También deseo poder tener otros controladores para extender AppController directamente: SomeNonSecureController extiende AppController.
esto es porque mi AppController actual tiene todo tipo de elementos Auth y ACL en su beforeFilter, pero también tengo controladores que no necesitan esa seguridad (antes de que todo necesitara la seguridad, no se han agregado nuevas especificaciones). . pero debido a que muchos controladores lo necesitan, no tiene sentido copiar y pegar el código a todos los controladores necesitados.
Estaba pensando en todas las cosas de seguridad de beforeFilter en un SecureController, de esta forma los controladores que necesitan seguridad lo extienden, mientras que otros heredan de AppController directamente.
¿Cómo harías para hacer algo como esto?
Gracias de antemano, Ken.
aquí es mi problema, lo que necesito para construir una aplicación que está tiene 2 webroots: uno/admin, y uno/pro pero necesitan estar compartiendo la misma carpeta/app para modelos y tal. ahora todo en/admin necesita ser seguro con Auth y ACL, mientras que/pro no necesita ser (esperar unos pocos controladores). ¿Cómo sugerirías que vayas a hacer esto? Por cierto, soy Ken de los comentarios en su blog de la ACL :) gracias por la respuesta! – Ken
Hmmm, probablemente actualizaría a 1.3 y luego usar Enrutamiento.prefijos para manejar los diferentes prefijos de URL y seguir utilizando los mismos modelos y controladores para todas las áreas. A continuación, utilice la propiedad AuthComponent :: allowedActions para cambiar qué acciones requieren autorización. ¿O me he perdido el punto? – neilcrookes
Bueno, eso podría funcionar (no sé nada sobre enrutamiento.prefixes en realidad) - pero 1.3 todavía está en alfa, y esta es una aplicación para uso de producción, así que no puedo arriesgarme. necesita encontrar una solución 1.2.5: - \ – Ken