ruby-on-rails - 设置设备管理员角色

标签 ruby-on-rails postgresql model devise

尝试将自己指定为我的 Rails 应用程序的管理员用户。我执行了 devise wiki 指南中的选项 2,并成功地向我的用户表添加了一个管理列。我现在想知道如何真正将我的角色从 false 更改为 true。我应该简单地通过 IRB 来做吗?通过 Rails 控制台?或 rails db,通过 Postgres 环境?抱歉新问题。

到目前为止的步骤

1.生成迁移

rails generate migration add_admin_to_users admin:boolean

2 .editted 迁移然后运行 ​​rake db:migrate

 class AddAdminToUsers < ActiveRecord::Migration
   def self.up
     add_column :users, :admin, :boolean, :default => false
   end

   def self.down
    remove_column :users, :admin
   end
 end

更新

我只是通过 Rails 控制台完成了这项工作。因为我已经通过用户界面创建了一个帐户,所以我可以像这样通过 Rails 控制台简单地设置 true 的 bool 值 -

 2.0.0p353 :014 > User.connection
 2.0.0p353 :014 > user = User.first
 2.0.0p353 :014 > user.admin = true
 2.0.0p353 :014 > user.save

请发表评论或更正任何问题。干杯:)

最佳答案

据我所知,irb 不可能做到这一点,除非您像 Rails 控制台那样加载了 Rails 环境。您可以通过多种方式(例如 SQL 查询)执行此操作,但我倾向于通过控制台执行此类操作,因为它会调用 ActiveRecord callbacks当模型发生变化时,例如 SQL 就不是这种情况。

关于ruby-on-rails - 设置设备管理员角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21769296/

相关文章:

ruby-on-rails - 为什么我会在生产 rake 任务中得到 `no such file to load -- ruby-debug` ?

jquery - 在 Rails 中从原型(prototype)切换到 jquery,助手呢?

sql - 查询不返回 bool 列设置为 FALSE 的记录?

javascript - 我应该在 AngularJS 中的哪里存储与模型相关的 View 数据?

ios - 如何准确检测设备型号?

css - 切换 CSS 以在 Rails 中使用 Assets 管道?

ruby-on-rails - 将带有 sunspot 的 Rails 应用程序连接到经过授权的 tomcat/solr 服务器

mysql - 可替代 MySQL 的嵌入式数据库

postgresql - Postgres转换没有分钟格式的时间

javascript - 如何通过 AJAX (Spring MVC) 使用新模型重新加载 JSP 的特定部分?