Tengo una serie de controladores y vistas asociadas dentro de mi aplicación que existen dentro del espacio de nombres Admin
. Quiero que estas vistas utilicen un diseño diferente al del espacio de nombres principal para que pueda darles una apariencia diferente al sitio normal. ¿Hay alguna forma de que pueda hacer esto usando la funcionalidad incorporada de Rails? Sé que si tengo una clase PostController
y creo una vista posts.html.erb
en el directorio de diseños, esto se usará como el diseño para cualquiera de las vistas del controlador, ¿hay algo similar que pueda hacer para los controladores con espacios de nombres?Proporcionar un diseño predeterminado para vistas dentro de un espacio de nombres
Respuesta
Crear clase AdminController personalizada para los controladores de su administración que va a heredar de. Este AdminController hereda de ApplicationController y anula el diseño.
class AdminController < ApplicationController
layout "admin"
end
class Admin::PostController < AdminController
end
Puede anular diseño predeterminado para cualquier controlador con layout método
No hay necesidad de layout
método. Debe poner sus archivos de diseño para el espacio de nombres en views/layouts/<namespace>
.
Ejemplo espacio de nombres con el nombre de foo
':
controlador: app/controllers/foo/bar_controller.rb
Disposición para este controlador: app/views/layouts/foo/bar.html.erb
Esto significa que debe crear un diseño para cada vista de espacio de nombres – chrisan
creo que obtendrá la respuesta exacta a su pregunta en esta hermosa screencast por Ryan Bates.
http://railscasts.com/episodes/269-template-inheritance
(es decir, si está usando Rails 3.1)
- 1. constructores dentro de un espacio de nombres
- 2. ¿Cómo crear variables privadas dentro de un espacio de nombres?
- 3. Cambiar el espacio de nombres predeterminado de un proyecto VSTO
- 4. ¿Cómo puedo deserializar xml con un espacio de nombres predeterminado?
- 5. Definición de una clase dentro de un espacio de nombres
- 6. Vinculación de símbolos dentro del espacio de nombres anónimo dentro de un espacio de nombre normal
- 7. amigo clase función dentro de un espacio de nombres
- 8. declaraciones #define dentro de un espacio de nombres
- 9. Cómo utilizar MySQLi dentro de un espacio de nombres
- 10. SuppressMessage para un espacio de nombres completo
- 11. Vistas flotantes para que no ocupen espacio en el diseño
- 12. "plantillas" un espacio de nombres
- 13. Clases dentro de CoffeeScript 'Espacio de nombres'
- 14. operador nuevo espacio de nombres dentro
- 15. Métodos dentro del espacio de nombres C#
- 16. ¿Está 'usando el espacio de nombres' dentro de otro espacio de nombre equivalente a un alias?
- 17. Cómo configurar el espacio de nombres XML predeterminado para un XDocument
- 18. Proporcionar un estilo predeterminado (atributos) en una vista personalizada
- 19. rails 3: diseño para rutas con espacios de nombres
- 20. espacio de nombre tag0 agregado para los elementos en el espacio de nombres predeterminado
- 21. Un espacio de nombre de php llamado predeterminado
- 22. ¿Hay alguna forma de proporcionar un valor predeterminado para un alias de ámbito aislado?
- 23. ¿Debería 'usar' estar dentro del espacio de nombres o afuera?
- 24. ¿Hay un atajo de espacio de nombres PHP para esto?
- 25. Averigüe el URI de espacio de nombres predeterminado de un documento XML en C#
- 26. ¿Qué es un espacio de nombres?
- 27. Espacio de nombres XML predeterminado, JDOM y XPath
- 28. Espacio de nombres para [DataContract]
- 29. Java XPath: Las consultas con xmlns espacio de nombres predeterminado
- 30. archivos de diseño XML Android y espacio de nombres
esto es casi un duplicado, y definitivamente relacionadas con: http://stackoverflow.com/questions/4221856/rails-3- layout-for-namespaced-routes – OnePablo