Ruby 在 Rails - 管理员用户视图
Ruby on Rails - Admin User View
我正在 Rails 应用程序上开发 Ruby,其中用户有很多 post,每个 post 有很多评论。
在Admin/view/user.erb文件中,如何将一个输出到屏幕上:
*用户的 posts?
*每个 post?
的评论
您可能在 url 某处拥有用户 ID:按照惯例,您的路径可能是
/admin/users/:id
进入 Admin:UsersController
的表演动作
这有点像
@user = User.find_by_id(params[:id])
在你看来你有
<% @user.posts.each do %>
<div class="user-post">
<div class="posted-at">Posted at <%= post.created_at.strftime("%d/%m/%Y") %></div>
<div class="post-body">
<%= post.body %>
</div>
<% post.comments.each do |comment| %>
<div class="comment">
<div class="posted-at">Posted at <%= comment.created_at.strftime("%d/%m/%Y") %></div>
<div class="post-body">
<%= comment.body %>
</div>
</div>
<% end %>
</div>
<% end %>
您显然可以根据自己的要求进行定制。
这都是超级基本的东西。你读过很多关于 rails 的文章吗?这就是脚手架生成器会为您做的事情。
在用户 table 中添加布尔列 admin 并设置 1 如果您希望该用户是 admin
在用户模型中定义
def is_admin?
admin == true
end
在控制器用户操作中
@users = User.all
在user.erb文件中,可以列出所有用户
- @users.each do |user|
= link_to user.name, show_users_path(user)
在控制器中显示动作
def show
@user = User.find(params[:id])
end
然后在显示页面
= @user.name
- @user.posts.each do |post|
= post.data
- post.comments.each do |comment|
= comment.data
我正在 Rails 应用程序上开发 Ruby,其中用户有很多 post,每个 post 有很多评论。
在Admin/view/user.erb文件中,如何将一个输出到屏幕上:
*用户的 posts?
*每个 post?
的评论您可能在 url 某处拥有用户 ID:按照惯例,您的路径可能是
/admin/users/:id
进入 Admin:UsersController
的表演动作这有点像
@user = User.find_by_id(params[:id])
在你看来你有
<% @user.posts.each do %>
<div class="user-post">
<div class="posted-at">Posted at <%= post.created_at.strftime("%d/%m/%Y") %></div>
<div class="post-body">
<%= post.body %>
</div>
<% post.comments.each do |comment| %>
<div class="comment">
<div class="posted-at">Posted at <%= comment.created_at.strftime("%d/%m/%Y") %></div>
<div class="post-body">
<%= comment.body %>
</div>
</div>
<% end %>
</div>
<% end %>
您显然可以根据自己的要求进行定制。
这都是超级基本的东西。你读过很多关于 rails 的文章吗?这就是脚手架生成器会为您做的事情。
在用户 table 中添加布尔列 admin 并设置 1 如果您希望该用户是 admin
在用户模型中定义
def is_admin?
admin == true
end
在控制器用户操作中
@users = User.all
在user.erb文件中,可以列出所有用户
- @users.each do |user|
= link_to user.name, show_users_path(user)
在控制器中显示动作
def show
@user = User.find(params[:id])
end
然后在显示页面
= @user.name
- @user.posts.each do |post|
= post.data
- post.comments.each do |comment|
= comment.data