引用属于 rails 中另一个模型 class 的字段

referencing fields that belong to another model class in rails

我正在使用 devise 并将模型的名称设置为 User。当我创建 post 模型时,我输入了以下内容:

 rails g model Post title body:text user:references

在 post 部分视图的索引页上,只要用户使用以下代码 post,我就可以看到所有用户的 ID 号:

<div class="container-fluid">
<% @posts.each do |post| %>
<div class="row">
<div class="jumbotron">
      <div class="page-header">
        <h1><%= post.title %> <small>by: 
       <%= post.user_id %></small></h1>
      </div>
    </div>
</div>

我的 post 控制器 class 中的 @posts 变量是:

@posts = Post.all

基本上我想要做的是获取用户电子邮件。

您可以通过您的模型获取关联模型:

<%= post.user.email %>

在您的控制器中:

@posts = Post.includes(:user).all

在视图中:

post.user.email

推荐: 使用分页作为一次获取​​所有记录在长 运行.

中不可行且可扩展