ActiveRecord :: UnknownAttributeError?

Acabo de empujar una aplicación a un entorno de producción Heroku.

Básicamente hay un modelo de Bus y tiene un atributo de seats

 class Bus < ActiveRecord::Base attr_accessible :seats, # other attributes end 

Ahora tengo una interfaz de JavaScript que JSON de POST para nuevos buses a buses#create acción.

ActiveRecord sigue encontrando un error cuando bash crear un bus:

 : POST www.busables.com/buses dyno=web.1 queue=0 wait=5ms service=65ms status=500 bytes=728 : : ActiveRecord::UnknownAttributeError (unknown attribute: seats): : app/controllers/buses_controller.rb:31:in `new' : app/controllers/buses_controller.rb:31:in `create' 

Los parámetros están llegando a la acción del controlador bien. Puedo registrarlos y obtengo lo siguiente:

 The bus parameters received: {"seats"=>"24", "departure_time(1i)"=>"2011", "departure_time(2i)"=>"11", "departure_time(3i)"=>"25", "departure_time(4i)"=>"16", "departure_time(5i)"=>"15", "route_attributes"=>{"summary"=>"N51", "beginning_address"=>"A place", "terminal_address"=>"Another place", "distance"=>26362, "duration"=>1753}} 

Verifiqué que la mesa de Bus realidad tiene la columna de seats y la tiene (corrí esto en la consola de Heroku):

 > Bus.column_names => ["id", "name", "route_id", "created_at", "updated_at", "price", "departure_time", "trip_distance", "trip_duration", "seats"] 

Y, por supuesto, he intentado migrar y cargar el esquema de base de datos. He comprobado que el attr_accessible :seats está configurado correctamente.

¿Alguna otra idea?

Estoy corriendo Rails 3.1.1 en la stack Heroku Cedar. Todo funciona bien en mi máquina local.

Es un cliché, pero lo intenté por la mañana y ¡funciona perfectamente! Sospecho que podría haber sido un problema de propagación de algún tipo.

Tuve este mismo problema con mi aplicación Heroku en producción, pero no con mi aplicación casi idéntica en la puesta en escena.

Cual fue la diferencia Mi aplicación de pruebas solo tenía 1 web dyno en lugar de 2.

Así que reducí manualmente mi aplicación de Producción a 0 dynamics web, luego volví a 2.

BAM! Problema resuelto.

Me estaba arrancando el pelo en este hasta que vi el comentario de Leito arriba.

 heroku restart --app staging 

arreglado este para mí

Prueba esto

 attr_reader :seats attr_accessor :seats 

en lugar de

 attr_accessible :seats