我正在从 sqllite db 迁移到 mysql2。我正在运行 mysql(并更改了 database.yml),但由于某种原因,我的 rake db:create 回来了:
rake aborted!
Don't know how to build task 'db:create'
当我执行:rake -T 时,列表中不会出现任何数据库任务。
我在 Rails 3.2.9 上
我在这里缺少什么明显的东西?
我正在从 sqllite db 迁移到 mysql2。我正在运行 mysql(并更改了 database.yml),但由于某种原因,我的 rake db:create 回来了:
rake aborted!
Don't know how to build task 'db:create'
当我执行:rake -T 时,列表中不会出现任何数据库任务。
我在 Rails 3.2.9 上
我在这里缺少什么明显的东西?
刚刚想通了。有人在 application.rb 中注释掉了以下内容:
require 'rails/all'
一旦放回 rake -T 返回数据库任务。
对于 2019 年登陆这里的人:
如果您rails new
使用-O
(Capital 'O') 运行或--skip-activerecord
想稍后添加数据库,则需要取消注释application.rb
以启用 Active Record 框架:
require "active_record/railtie"
编辑:
您还需要在应用程序的根目录中创建以下结构:
your_app
|_config
|_ database.yml
|_db
|_ migrate
|_ schema.rb
然后运行:
rake db:schema:dump