You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Rails 5.2.6集成Active Admin后执行AdminUser.create!报rails aborted错误如何解决

问题根因

你出现报错的核心原因是执行方式错误:你将AdminUser.create!这条Ruby ActiveRecord操作代码直接作为rails命令的参数执行了,Rails会将你传入的内容识别为Rake任务去查找,自然找不到对应的任务,就抛出了"Don't know how to build task"的错误,和Active Admin、Devise的配置无关,也不需要额外修改配置。

正确创建管理员的两种方案
  • 方案一:通过Rails控制台临时创建
    1. 先在项目根目录执行命令进入Rails控制台:
    rails c
    
    1. 控制台加载完成后,输入创建代码执行即可:
    AdminUser.create!(email: "admin@gmail.com", password: "password", password_confirmation: "password")
    
  • 方案二:写入种子文件长期复用
    1. 打开项目下的db/seeds.rb文件,添加如下代码:
    AdminUser.create!(email: "admin@gmail.com", password: "password", password_confirmation: "password")
    
    1. 执行种子数据执行命令即可完成创建:
    rails db:seed
    
注意事项
  • 如果执行创建时报验证错误,大概率是你项目的Devise配置了密码复杂度规则,调整传入的password符合规则即可,和创建方式无关。
  • 生产环境不要使用示例中的弱密码,创建完成后及时修改账号密码,避免安全风险。
  • 可以在Rails控制台执行AdminUser.exists?(email: "admin@gmail.com")验证创建结果,返回true即代表创建成功。

内容的提问来源于stack exchange,提问作者Magus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 03:15:07