我创建了一个应用并安装了设备。如何在用户登录时管理用户?例如,我如何拥有所有注册会员的列表? 我可以想象我必须使用设计生成一个主持人帐户,但我不确定如何处理这个问题?
有人可以告诉我一些关于使用设计管理用户的信息吗?
答案 0 :(得分:0)
要管理注册用户,您可以从模型User
rails g scaffold_controller User
要限制对此控制器的访问权限,您必须实施某种授权,这种授权可以与在is_admin
模型上创建User
属性到CanCan等更高级的属性不同。< / p>
我的建议是,如果你刚刚开始
,请保持简单rails g migration add_is_admin_to_users is_admin:boolean
然后检查UserController
是否current_user.is_admin
为真。
答案 1 :(得分:0)
您需要在admin文件夹下创建用户控制器和视图,而不是访问设备用户。
代码:
应用程序/控制器/管理/ users_controller.rb
class Admin::UsersController < ApplicationController
def index
@users = User.all
end
end
与您的观看部分app/views/admin/users/index.html.erb
<%- model_class = User -%>
<h1><%=t '.title', :default => model_class.model_name.human.pluralize.titleize %></h1>
<table class="table table-striped table-bordered">
<thead>
<tr>
<th>id</th>
<th>name</th>
<th><%=t '.actions', :default => t("helpers.actions") %></th>
</tr>
</thead>
<tbody>
<% @users.each do |user| %>
<tr>
<td><%= link_to user.id, "#" %></td>
<td><%= user.name %></td>
<td>
<%= link_to t('.edit', :default => t("helpers.links.edit")),
edit_admin_user_path(user), :class => 'btn btn-mini' %>
<%= link_to t('.destroy', :default => t("helpers.links.destroy")),
admin_user_path(user),
:method => :delete,
:data => { :confirm => t('.confirm', :default => t("helpers.links.confirm", :default => 'Are you sure?')) },
:class => 'btn btn-mini btn-danger' %>
</td>
</tr>
<% end %>
</tbody>
</table>
<%= link_to t('.new', :default => t("helpers.links.new")),
new_admin_user_path,
:class => 'btn btn-primary' %>
现在可以使用普通用户/索引操作来显示设计用户列表。