2017-01-26 2 views
1

Я новичок в использовании Rails, а также Heroku и пытаюсь нажать приложение, которое работает отлично. Я могу подтолкнуть ее к Heroku (на первый взгляд), но когда я пытаюсь его увидеть, я получаюОшибка при попытке просмотреть приложение Heroku

ActionView::Template::Error (PG::UndefinedTable: ERROR: relation "users" does not exist 

I рыть через аналогичный С.О. пост, я думаю, что это что-то делать с базой данных приложение является используя в рамках heroku, но до сих пор используя heroku run rake db:reset, а затем heroku run rake db:migrate вернул ту же ошибку. Я уверен, что я сделал что-то ужасно ошибочное здесь, но я надеюсь, что кто-то поможет мне понять это. Вот что я получаю с heroku logs:

2017-01-26T05:24:34.232181+00:00 app[web.1]: I, [2017-01-26T05:24:34.232138 #4] INFO -- : [7baf7e95-1518-4773-9f3c-39aef34651f2] Completed 500 Internal Server Error in 7ms (ActiveRecord: 1.8ms) 
2017-01-26T05:24:34.233452+00:00 app[web.1]: F, [2017-01-26T05:24:34.233406 #4] FATAL -- : [7baf7e95-1518-4773-9f3c-39aef34651f2] 
2017-01-26T05:24:34.233498+00:00 app[web.1]: F, [2017-01-26T05:24:34.233455 #4] FATAL -- : [7baf7e95-1518-4773-9f3c-39aef34651f2] ActionView::Template::Error (PG::UndefinedTable: ERROR: relation "users" does not exist 
2017-01-26T05:24:34.233500+00:00 app[web.1]: LINE 1: SELECT "users".* FROM "users" WHERE "users"."id" IS NULL LI... 
2017-01-26T05:24:34.233501+00:00 app[web.1]:        ^
2017-01-26T05:24:34.233501+00:00 app[web.1]: : SELECT "users".* FROM "users" WHERE "users"."id" IS NULL LIMIT $1): 
2017-01-26T05:24:34.233649+00:00 app[web.1]: [7baf7e95-1518-4773-9f3c-39aef34651f2]  21:  <div class="container"> 
2017-01-26T05:24:34.233648+00:00 app[web.1]: F, [2017-01-26T05:24:34.233606 #4] FATAL -- : [7baf7e95-1518-4773-9f3c-39aef34651f2]  20:  <div class="header"> 
2017-01-26T05:24:34.233650+00:00 app[web.1]: [7baf7e95-1518-4773-9f3c-39aef34651f2]  22:   <a href="../messages"><h1 class="logo">MessagesApp</h1> <img class="logo-img" src="http://vignette2.wikia.nocookie.net/titanfall/images/3/3a/Icon_Chat.png/revision/latest?cb=20140504182858"></a> 
2017-01-26T05:24:34.233650+00:00 app[web.1]: [7baf7e95-1518-4773-9f3c-39aef34651f2]  23:   <% if logged_in? %> 
2017-01-26T05:24:34.233651+00:00 app[web.1]: [7baf7e95-1518-4773-9f3c-39aef34651f2]  24:    <%= link_to "Log out".html_safe, logout_path, method: "delete", class: "login-btn btn btn-default navbar-btn" %> 
2017-01-26T05:24:34.233652+00:00 app[web.1]: [7baf7e95-1518-4773-9f3c-39aef34651f2]  25:   <% else %> 
2017-01-26T05:24:34.233652+00:00 app[web.1]: [7baf7e95-1518-4773-9f3c-39aef34651f2]  26:    <%= link_to "Log in".html_safe, login_path, class: "login-btn btn btn-default navbar-btn" %> 
2017-01-26T05:24:34.233692+00:00 app[web.1]: F, [2017-01-26T05:24:34.233648 #4] FATAL -- : [7baf7e95-1518-4773-9f3c-39aef34651f2] 
2017-01-26T05:24:34.233718+00:00 app[web.1]: F, [2017-01-26T05:24:34.233685 #4] FATAL -- : [7baf7e95-1518-4773-9f3c-39aef34651f2] app/helpers/sessions_helper.rb:7:in `current_user' 
2017-01-26T05:24:34.233718+00:00 app[web.1]: [7baf7e95-1518-4773-9f3c-39aef34651f2] app/helpers/sessions_helper.rb:11:in `logged_in?' 
2017-01-26T05:24:34.233719+00:00 app[web.1]: [7baf7e95-1518-4773-9f3c-39aef34651f2] app/views/layouts/application.html.erb:23:in `_app_views_layouts_application_html_erb__1527317900822670125_70088753231660' 
2017-01-26T05:24:34.240424+00:00 heroku[router]: at=info method=GET path="/" host=nameless-bayou-71899.herokuapp.com request_id=7baf7e95-1518-4773-9f3c-39aef34651f2 fwd="207.67.119.130" dyno=web.1 connect=1ms service=12ms status=500 bytes=1733 

вот что я считаю, соответствующий код:

<% @messages.each do |message| %> 
    <div class="message <%= 'right' if logged_in? && message.user_id==current_user.id %>"> 

     <% if message.user_id==current_user.id %> 
     <%= '<p class="user_name text-right">Me</p>'.html_safe %> 
     <% else %> 
     <p class="user_name"><%= message.user.name %></p> 
     <% end %> 

    <p class="content"><%= message.content %></p> 
    <p class="time <%= 'right' if message.user_id==current_user.id %>"><%= time_ago_in_words(message.created_at) %><br> 
     <% if message.user_id==current_user.id %> 
     <%= link_to 'Delete', message_path(message), 
      class: "delete-link", 
       method: :delete, 
       data: { confirm: 'Are you sure?' } %></p> 
     <% end %> 
    </div> 
     <% end %> 
+0

try 'heroku pg: reset DATABASE; heroku run rake db: migrate' - это полностью сбросит db –

+0

спасибо, я попробовал это сейчас и получил это: 'StandardError: произошла ошибка, эта и все последующие миграции отменены: PG :: UndefinedTable: ERROR: отношение «пользователи» не существует : CREATE TABLE «сообщения» («id» серийный первичный ключ, текст «content», «user_id» integer, «created_at» timestamp NOT NULL, «updated_at» timestamp NOT NULL, CONSTRAINT «fk_rails_e3b11c0cbb», FOREIGN KEY ("users_id") ССЫЛКИ «пользователи» («id») ) ' –

+0

Твоя миграция в вашем заказе. Сбросьте свой db на свой локальный компьютер и сделайте его первым. –

ответ

0

Вы можете попытаться разделить миграции для сообщений модели для двух отдельных миграций. Первая миграция создает модель. вторая миграция добавляет ссылочное отношение

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