1

我正在尝试在 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 文件。

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

4

2 回答 2

2

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

Sequel.extension:迁移

Sequel 附带 bin/sequel 工具,您可以使用该工具通过 -m 开关运行迁移:

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

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

您的设置问题之一可能是您从 000 开始迁移。从 001 开始迁移可能会更好。

Migrator 有 rdoc 文档:

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

于 2009-07-02T02:57:07.887 回答
0

这是我的解决方案:

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

运行“rake -T”查看我编写的各种数据库和迁移任务。”

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

于 2009-07-02T02:31:42.197 回答