Ramaze与Sequel Migrations?

时间:2009-07-01 20:53:36

标签: ruby ramaze sequel

我正在尝试在Ramaze中设置迁移。我来自大多数Rails的东西,但我想给别人一些机会。无论如何,我的项目中有一个名为“migrations”的目录,其中包含一个start.rb文件,然后是我的迁移。这是start.rb:

require File.expand_path('../app.rb', File.dirname(__FILE__))
require 'sequel/extensions/migration.rb'

Sequel::Migrator.apply(DB, '.')

现在,首先,我不知道为什么我不能做到

Sequel::Model.plugin(:migration)

而不是那个长期需要,但它似乎有效,所以我并不担心它太多。主要问题是我的迁移都没有实际运行。它创建了schema_info表,所以我知道尝试工作,但它找不到我在同一目录中的000_initial_info.rb文件。

我真的找不到任何关于此的文档,所以这是我自己的解决方案。我也很乐意听到其他解决方案,如果我只是将这一切都搞错了。谢谢你的帮助!

2 个答案:

答案 0 :(得分:2)

你不能使用Sequel :: Model.plugin:migration,因为迁移不是模型插件,它是核心扩展。这将有效:

Sequel.extension:migration

Sequel附带了bin / sequel工具,您可以使用它来使用-m开关运行迁移:

续集-m / path / to / app / migrations

除非您有特殊需求,否则我建议您使用它。

您的设置问题之一可能是您在000处开始迁移。从001处启动它们可能会更好。

有关于Migrator的rdoc文档:

http://sequel.rubyforge.org/rdoc-plugins/classes/Sequel/Migrator.html

答案 1 :(得分:0)

这是我的解决方案:

http://github.com/mwlang/ramaze-sequel-proto-experimental

运行“rake -T”以查看我编写的各种db和migrate任务。“

我现在使用这个“实验性”作为我的ramaze项目模板。