У меня есть страница, которая показывает список изображений и количество очков, добавленных к этому изображению. Локально он работает отлично, но теперь я пытаюсь заставить его работать на моем сервере, и когда я нахожусь на странице, я получаю сообщение об ошибке,Посещение страницы rails вызывает ошибку
Извините, но что-то пошло не так. Если вы владелец приложения проверить журналы для получения дополнительной информации
Мой журнал это показывает,
I, [2015-02-03T06:51:31.352333 #28417] INFO -- : Started GET "/competitions/4" for 82.73.170.71 at 2015-02-03 06:51:31 -0500
I, [2015-02-03T06:51:31.353823 #28417] INFO -- : Processing by CompetitionsController#show as HTML
I, [2015-02-03T06:51:31.353886 #28417] INFO -- : Parameters: {"id"=>"4"}
I, [2015-02-03T06:51:31.364301 #28417] INFO -- : Rendered competitions/show.html.haml within layouts/application (7.8ms)
I, [2015-02-03T06:51:31.364563 #28417] INFO -- : Completed 500 Internal Server Error in 10ms
F, [2015-02-03T06:51:31.366172 #28417] FATAL -- :
ActionView::Template::Error (undefined method `points' for #<Picture:0x007f80f61ca038>):
54: Votes
55: - if signed_in?
56: - if current_user == @competition.user || current_user.administrator? || Time.now.in_time_zone("Amsterdam") <= @competition.deadline
57: = picture.points
58: -# = pluralize(picture.votes.count, "vote")
59: -# %span
60: -# %div
app/views/competitions/show.html.haml:57:in `block in _app_views_competitions_show_html_haml___3029568455364587805_70095924335640'
app/views/competitions/show.html.haml:44:in `each'
app/views/competitions/show.html.haml:44:in `_app_views_competitions_show_html_haml___3029568455364587805_70095924335640'
код из моего show.html.haml
- if Time.now.in_time_zone("Amsterdam") >= @competition.deadline_signin
- @competition.pictures.shuffle.each do |picture|
.item
= link_to picture do
= image_tag(picture.image_url)
.content
%p
Door:
= picture.user.name
%p.vote
Votes
- if signed_in?
- if current_user == @competition.user || current_user.administrator? || Time.now.in_time_zone("Amsterdam") <= @competition.deadline
= picture.points
-# = pluralize(picture.votes.count, "vote")
-# %span
-# %div
-# %p
-# \ #{pluralize(picture.votes.count, "")}
= link_to picture.title, picture, :class => "art-name"
Кто-нибудь увидеть в чем проблема?
редактировать "показывая миграции"
20150131130944_add_points_to_pictures.rb
class AddPointsToPictures < ActiveRecord::Migration
def change
add_column :pictures, :points, :integer, default: 0
end
end
И действие миграции,
[email protected]:~/wisemonkeys/current$ RAILS_ENV=production bundle exec rake db:migrate
== AddPositionToPictures: migrating ==========================================
-- add_column(:pictures, :position, :integer)
-> 0.0046s
== AddPositionToPictures: migrated (0.0049s) =================================
== AddPointsToPictures: migrating ============================================
-- add_column(:pictures, :points, :integer, {:default=>0})
-> 0.0034s
== AddPointsToPictures: migrated (0.0037s) ===================================
ли изображение на самом деле есть метод точек? –
Если точки - это атрибут, добавленный с переносом, обязательно выполняйте миграцию на сервере. – wpp
Вы пытались возиться с этим методом в своей консоли Rails? – David