У меня есть два контроллера - ProfilesController и UsersController.У меня есть страница, полная постов в блоге, и я хочу, чтобы у каждого была ссылка на профиль пользователя, который их создал.У меня были крошечные проблемы с этим в последнее время, и я хочу начать все сначала, но не знаю, с чего начать.Как я могу это сделать?
Почтовый контроллер:
def index
if params[:search]
@posts = Post.search(params[:search]).order("created_at DESC").paginate(page: params[:page], per_page: 5)
else
@posts = Post.all.order('created_at DESC').paginate(page: params[:page], per_page: 5)
end
end
Модель профилей:
class Profile < ApplicationRecord
belongs_to :user
end
Модель пользователя:
class User < ApplicationRecord
has_secure_password
validates :username, uniqueness: true
has_many :posts, foreign_key: :author
has_many :comments, foreign_key: :author
has_one :profile, foreign_key: :user
after_create :build_profile
def build_profile
Profile.create(user: self) # Associations must be defined correctly for this syntax, avoids using ID's directly.
end
end
BTW not using Devise