Форма работает в разработке, но не в производстве - Heroku - PullRequest
0 голосов
/ 11 января 2019

У меня есть платформа для голосования, которую я создаю для своей компании, и я очень близок к тому, чтобы закончить ее, но реальное голосование проваливается в процессе производства. Я сделал всю свою миграцию и все, и она все еще работает в разработке.

Вот логи, которые я получаю от героку:

2019-01-11T18: 33: 59.235681 + 00:00 приложение [web.1]: I, [2019-01-11T18: 33: 59.235579 # 4] ИНФОРМАЦИЯ -: [772bc37c-00ee-43da-aa81-564d353553bb] Начало POST "/ бюллетени / 13 / голоса" за 75.150.214.2 в 2019-01-11 18:33:59 +0000 2019-01-11T18: 33: 59.236373 + 00: 00 app [web.1]: I, [2019-01-11T18: 33: 59.236296 # 4] INFO -: [772bc37c-00ee-43da-aa81-564d353553bb] Обработка с помощью VotesController # создать как HTML 2019-01-11T18: 33: 59.236437 + 00: 00 app [web.1]: I, [2019-01-11T18: 33: 59.236378 # 4] INFO -: [772bc37c-00ee-43da-aa81-564d353553bb] Параметры: {"utf8" => "✓", "Authenticity_token" => "Y / vAh2kYPskozS2yQn3Ky1fOq41abLUjlxho0Q + zXHSndVlaSfwYz7bdoqvintdBXrYNDhsbIduYICpUAx3 / 0g ==", "user_vote" => "Зачем", "голосовать" => {"комментарий" => ""}, "зафиксировать" => «Привести голосование», "ballot_id" => "13"} 2019-01-11T18: 33: 59.239540 + 00: 00 app [web.1]: D, [2019-01-11T18: 33: 59.239464 # 4] DEBUG -: [772bc37c-00ee-43da-aa81-564d353553bb] Избирательная нагрузка (0,7 мс) SELECT "бюллетени". * ИЗ "бюллетеней" ГДЕ "бюллетени". "id" = $ 1 LIMIT $ 2 [["id", 13], ["LIMIT", 1]] 2019-01-11T18: 33: 59.240333 + 00: 00 app [web.1]: I, [2019-01-11T18: 33: 59.240244 # 4] INFO -: [772bc37c-00ee-43da-aa81-564d353553bb] Завершено 500 внутренних серверов Ошибка в 4 мс (ActiveRecord: 0,7 мс) 2019-01-11T18: 33: 59.240846 + 00: 00 app [web.1]: F, [2019-01-11T18: 33: 59.240770 # 4] FATAL -: [772bc37c-00ee-43da-aa81-564d353553bb] 2019-01-11T18: 33: 59.240917 + 00:00 приложение [web.1]: F, [2019-01-11T18: 33: 59.240847 # 4] FATAL -: [772bc37c-00ee-43da-aa81-564d353553bb] ActiveModel :: UnknownAttributeError (неизвестный атрибут «комментарий» для Проголосуйте.): '' 2019-01-11T18: 33: 59.240981 + 00:00 приложение [web.1]: F, [2019-01-11T18: 33: 59.240914 # 4] FATAL -: [772bc37c-00ee-43da-aa81-564d353553bb] 2019-01-11T18: 33: 59.241051 + 00:00 приложение [web.1]: F, [2019-01-11T18: 33: 59.240987 # 4] FATAL -: [772bc37c-00ee-43da-aa81-564d353553bb] app / controllers / избирателей_controller.rb: 10: в `create ' 2019-01-11T18: 34: 07.533587 + 00:00 геройку [прог. 2070]: состояние изменено с до завершения bobby @ bobby-Al

Вот мой код для создания голоса

def create
    @ballot = Ballot.find(params[:ballot_id])
    @vote = @ballot.votes.new(user_vote: params[:user_vote], comment: params[:vote][:comment])
    @vote.user_id = current_user.id
    if !current_user.votes.find_by(ballot_id: params[:ballot_id])
        @vote.save
        redirect_to ballot_path(params[:ballot_id]) 
    else
        flash[:alert] = "You've already voted on this ballot"
        redirect_to ballot_path(params[:ballot_id])
    end
end

1 Ответ

0 голосов
/ 11 января 2019

Это похоже на проблему с миграцией, просто убедитесь, что вы запустили свои миграции для создания среды на heroku следующим образом:

heroku run rake db:migrate

Перезапустите приложение

heroku restart --app my_app_name

Важно

Если вы генерируете миграцию, в которой создается таблица, и нажимаете на heroku, чтобы добавить еще один столбец в эту таблицу, вам не следует изменять этот столбец, вместо этого вам следует создать еще один.

Когда вы запускаете rake db: migrate, rails регистрирует это в таблице schema_migrations, поэтому, если вы измените уже зарегистрированную миграцию, она больше не будет выполняться. Это может быть так, проверьте непосредственно в вашей базе данных и посмотрите, есть ли там столбец.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...