2013-12-13 2 views
1

В моих журналах Heroku:Rails с Завещания, отлично работает на локальном хосте, не будет работать на Heroku

Processing by UsersController#create as HTML 
Parameters: {"utf8"=>"✓", "authenticity_token"=>"YsNr73owFsrgM4HX5QDq304ot4gBhGBx1SlOkq+hAxg=", "user"=>{"housing_type"=>"Sublets/Shares", "area_id"=>"1", "subarea_id"=>"", "rent_min"=>"", "rent_max"=>"", "bedroom_min"=>"0", "cat"=>"0", "dog"=>"0", "pic"=>"0", "email"=>"[email protected]"}, "commit"=>"Start your Free Trial: 10 leads"} 

app/controllers/users_controller.rb:16:in `create' 
Completed 500 Internal Server Error in 6ms 
NameError (undefined local variable or method `confirmed_at' for #<User:0x000000048a57b0>): 
    app/models/user.rb:81:in `password_required?' 

Так терпит неудачу на линии 16 в #create, которая является @ user.save часть:

@user = User.new(params[:user]) 
if @user.save 

и password_required метод объявлен для Devise в файле user.rb:

def password_required? 
    super if confirmed? 
    end 

я уже запустить грабли БД: мигрировать и проверить migrati чтобы убедиться, что он был завершен на Heroku. Я также запустить

heroku run rails console 
irb(main):012:0> User 
=> User(id: integer, email: string, trial_count_left: integer, created_at: datetime, updated_at: datetime, rent_min: integer, rent_max: integer, bedroom_min: integer, cat: boolean, dog: boolean, pic: boolean, housing_type: string, subarea_id: integer, area_id: integer, encrypted_password: string, reset_password_token: string, reset_password_sent_at: datetime, remember_created_at: datetime, sign_in_count: integer, current_sign_in_at: datetime, last_sign_in_at: datetime, current_sign_in_ip: string, last_sign_in_ip: string, confirmation_token: string, confirmed_at: datetime, confirmation_sent_at: datetime, unconfirmed_email: string) 

который confirmed_at

Наконец, я также запустить через

heroku run rails console 
irb(main):012:0> User.new(< manual params here >).save 

И все отлично работает через переводчика.

Что может быть неправильным? Я бы предпочел не сбрасывать всю базу данных, поскольку это производственная база данных.

Благодаря

ответ

2

По какой-то причине "Heroku перезагрузка" сделал трюк. Я не уверен, что происходит на заднем плане, технически говоря, но я рад, что он работает сейчас. Я просмотрю документацию Heroku, чтобы узнать, могу ли я определить основную техническую причину этого.

Смежные вопросы