我正在使用设计并且我更好地如何制作视图以便视图将列出所有用户,当我点击用户时它将显示该用户发布的所有帖子。我只是想不通。
我可以列出所有用户,但是当我想点击一个用户并列出用户从ratter完成的所有帖子时。
-------------我的用户模型
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
has_many :ratter
end
------------- my ratter model
class Ratter < ActiveRecord::Base
belongs_to :user
end
-------------我的观点
<h1>List all users </h1>
<% @user.each do |user| %>
<%= user.email %>
<%= link_to 'show', user %>
<% end %>
-------------我的观点
class AdminController < ApplicationController
def index
@user = User.all
end
def show
@user = User.find(params[:id])
end
end
答案 0 :(得分:0)
您应该能够通过关联访问用户帖子,如下所示:
@user.ratter
然后在您的节目视图中,您可以简单地迭代它们,并使用路径方法生成指向帖子的链接:
<% @user.ratter.each do |ratter| %>
<%= link_to ratter.title, ratter_path(ratter) %>
<% end %>
你可以运行&#39; rails console&#39;玩耍和测试。请注意,您需要添加&#39; app&#39;在那里的路径命令。像这样:
app.ratter_path(1)