Я скопировал и вставлял код из учебника Майкла Хартля и менял его в соответствии со своими потребностями. Мое приложение в настоящее время имеет следующую систему, в которой пользователи должны иметь возможность перейти на страницу, где они видят только сообщения от себя и тех, кому они следуют.Почему не отображаются мои фиды?
My view for myfeed.html.erb is empty, потому что я не уверен, что в него положить (или если что-то вообще присутствует). Майкл Хартл, кажется, ничего не добавляет к домашней странице в своем учебнике.
Вот мой PagesController:
class PagesController < ApplicationController
def home
end
def about
end
def myfeed
if signed_in?
@thing = current_user.things.build
@feed_items = current_user.feed.paginate(page: params[:page])
end
end
end
Вот моя вещь модель:
class Thing < ActiveRecord::Base
belongs_to :user
default_scope -> { order('created_at DESC') }
has_attached_file :image, :styles => { :large => '500x500>', :medium => '300x300>', :thumb => '100x100>' }
validates :image, presence: true
validates :title, presence: true
# Returns microposts from the users being followed by the given user.
def self.from_users_followed_by(user)
followed_user_ids = "SELECT followed_id FROM relationships
WHERE follower_id = :user_id"
where("user_id IN (#{followed_user_ids}) OR user_id = :user_id",
user_id: user.id)
end
end
Вот способ подачи моей модели пользователя:
def feed
Thing.from_users_followed_by(self)
end
EDIT
Так что проблема была в том, что мой взгляд был пуст.
Итак, я решил, что, по крайней мере, я мог бы поставить <%= @feed_items %>
, на мой взгляд, не так ли? Когда я делаю, я получаю этот выход на моей странице: #<ActiveRecord::Relation::ActiveRecord_Relation_Thing:0x00000108ad3f50>
Не пытаясь быть рывками, но ваши детали подачи не показываются, так как вы сказали, ваш 'myfeed .html.erb' пуст. Используйте '@ feed_items' в представлении и покажите им, как вы хотите. Если ничего не будет сделано, ничего не появится. –
Ты не отрывистый. Вы дали законный ответ на мой вопрос. Я еще раз уточню свой вопрос. @NickVeys –