7

Después de actualizar a Rails 3.1.0 y después de David Rice's instructions, todos mis controladores de forma extraña ya no pueden encontrar sus vistas.ActionView :: MissingTemplate después de la actualización de Rails 3.1

# rails s # 

Started GET "/units" for 127.0.0.1 at 2011-09-04 07:52:23 -0400 
    Unit Load (0.1ms) SELECT "units".* FROM "units" 

ActionView::MissingTemplate (Missing template units/index, application/index with {:handlers=>[:erb, :builder], :formats=>[:html], :locale=>[:en, :en]}. Searched in: 
): 
    app/controllers/units_controller.rb:9:in `index' 

units_controller.rb:

# GET /units 
    # GET /units.xml 
    def index 
    @units = Unit.all 

    respond_to do |format| 
     format.html # index.html.erb 
     format.xml { render :xml => @units } 
    end 
    end 

Por supuesto, la vista es allí (/app/views/units/index.html.erb, sino que estaba trabajando antes de la actualización). Siento que es un error estúpido, ¿qué me falta aquí?

+0

ahora no recibo este mismo error en el servidor local, pero lo estoy consiguiendo en Heroku por alguna razón inexplicable . ¿Alguien más vio esto? –

Respuesta

4

Parece que se olvidó de retirar la siguiente línea en su development.rb:

config.action_view.debug_rjs = true

Esto se debe quitar o comentada cuando no se usa Rail Javascript.

Véase el "jQuery: Nueva predeterminado" en rubyonrails.org para obtener más información sobre la actualización http://weblog.rubyonrails.org/2011/4/21/jquery-new-default

0

Las vistas se guardan como erb, no como haml? Sólo puñaladas en la oscuridad ...

+0

Correcto.(es demasiado corto) –

+0

¿Qué sucede si comenta la línea 'format.xml'? – snowangel

+0

Sin cambios. (demasiado corto) –

2

Al igual que Tom dijo, había olvidado originalmente para eliminar

config.action_view.debug_rjs = true 

en /config/environments/development.rb, pero al Cuando publiqué la pregunta, ya lo había hecho.

La cosa sin embargo (bastante estúpida) es que tuve que reiniciar el servidor después de cambiar un parámetroconfig. ¡Reinicia tus servidores cuando cambies tu configuración, hijos!

0

Tengo el mismo error, pero por un motivo diferente. Tenía mi RAILS_ENV configurado para el desarrollo cuando realicé mis pruebas de pepino.

export RAILS_ENV= o export RAILS_ENV=test corrigió el problema.

0

rieles generan controlador Índice Bienvenido generará el controlador, supongo que esta es la forma más sencilla de generar el controlador

0

Si va a actualizar una aplicación de edad que ha estado presente desde Rieles v1, es posible que haya plantillas XML denominado como .rxml. Esto ya no se admite en Rails 3.1 (donde estaba en 3.0), por lo que deben cambiar el nombre a .builder.

Lo que era:

units.xml.rxml 

necesita ser renombrado a:

units.xml.builder 

Esto afectaría a todas las plantillas que utiliza el constructor XML. p.ej. RSS, etc. KML

0

vi este problema, ya que algunos de mis plantillas todavía fueron nombrados .rhtml en lugar de .erb.html

Cuestiones relacionadas