以下命令应该创建一个新数据库。
rails db:create
这个函数定义在哪里?或者这是rails中的预打包功能吗?
答案 0 :(得分:3)
它位于框架的databases.rake文件中:
Person
每当您怀疑或想知道任务的定义位置时,您可以使用__init__
(或namespace :create do
task all: :load_config do
ActiveRecord::Tasks::DatabaseTasks.create_all
end
ActiveRecord::Tasks::DatabaseTasks.for_each do |spec_name|
desc "Create #{spec_name} database for current environment"
task spec_name => :load_config do
db_config = ActiveRecord::DatabaseConfigurations.config_for_env_and_spec(Rails.env, spec_name)
ActiveRecord::Tasks::DatabaseTasks.create(db_config.config)
end
end
end
)命令,传递任务:
rails -W
注意它是在Rake的0.9版本中引入的。根据您正在使用的版本,这可能会或可能不会起作用。