首页
学习
活动
专区
圈层
工具
发布

任务
EN

Stack Overflow用户
提问于 2015-05-14 05:37:34
回答 2查看 444关注 0票数 1

我正在尝试使用'rom/sql/rake_task‘来设置迁移。

这是我的样本,但遗憾的是,它没有工作,因为它在抱怨一个丢失的续集适配器。如有任何协助或指导,将不胜感激。

代码语言:javascript
复制
require 'sqlite3'
require 'rom-sql'
require 'rom/sql/rake_task'

namespace :db do
  task :setup do
    ROM.setup(:sql, 'sqlite_memory')
    ROM.finalize

    ROM::SQL.migration do
      change do
        create_table(:users) do
          primary_key :id
          String :name
        end
      end
    end
  end
end
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-05-14 06:35:07

完整示例:https://github.com/gotar/sinatra-rom

在你添加

代码语言:javascript
复制
require 'bundler/setup'
require 'rom/sql/rake_task'

task :setup do
  # Load ROM related stuff. You don't need to specify manually connection
end

对于Rakefile,您会得到很少的Raketask (rake -T)来列出它们,

然后

代码语言:javascript
复制
$ rake db:create_migration[any_name]

在它将创建的文件中,您可以添加迁移。

仅此而已

票数 3
EN

Stack Overflow用户

发布于 2015-05-14 05:44:14

你可以试试:

代码语言:javascript
复制
ROM::SQL::Migration.connection = ROM.setup(:sql, 'sqlite_memory').default.connection
ROM.finalize.env

ROM::SQL::Migration.create do
  # ...
end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30229989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档