从另一个表中显示作者姓名

时间:2012-11-03 14:39:48

标签: ruby-on-rails relationship

我想在我的帖子脚手架中显示作者的姓名。 我有一个帖子和用户表。

posts表有一个author_id行,它链接到users表中的ID。

我的帖子模型:

belongs_to :user

用户模型:

  has_many :posts, dependent: :destroy

如何在帖子中的users表中显示作者姓名?

**Users format**
ID          integer
name    string

**Posts format**
ID          integer
title   string
content text
author_id   integer

这适用于节目视图:

  def show
@post = Post.find(params[:id])
@author = User.where(:id => @post.author_id).first

这是索引视图:

  def index
@posts = Post.all
@posts.each do |post|
  @author = User.where(:id => @post.author_id).first 
end

但是索引视图不起作用!

2 个答案:

答案 0 :(得分:0)

Post.where(....).each do |post|
  post.author
end

答案 1 :(得分:-2)

索引视图:

@articles.each do |article|
   @author = Author.where(:id => article.author_id).first
end