代码之家  ›  专栏  ›  技术社区  ›  Phil Kulak

有后遗症吗?

  •  1
  • Phil Kulak  · 技术社区  · 15 年前

    我想在拉马兹安排移民。我主要是从铁路方面来的,但我想试试别的。无论如何,我的项目中有一个名为“migrations”的目录,其中包含start.rb文件,然后是我的migrations。这里是start.rb:

    require File.expand_path('../app.rb', File.dirname(__FILE__))
    require 'sequel/extensions/migration.rb'
    
    Sequel::Migrator.apply(DB, '.')
    

    首先,我不知道为什么我不能

    Sequel::Model.plugin(:migration)
    

    不是那种长期的需求,但它似乎是有效的,所以我不太担心它。主要的问题是我的迁移实际上都没有运行。它创建了模式信息表,所以我知道 尝试 要工作,但它找不到我的000_初始_info.rb文件就在同一个目录中。

    我找不到任何关于这个的文档,所以这是我自己的解决方案。如果我把这一切都搞错了,我也希望听到其他的解决办法。谢谢你的帮助!

    2 回复  |  直到 14 年前
        1
  •  2
  •   Jeremy Evans    15 年前

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

    续集扩展:迁移

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

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

    除非你有特殊需要,我建议你使用它。

    安装程序的一个问题可能是从000开始迁移。从001开始可能会更好。

    迁移程序有RDOC文档:

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

        2
  •  0
  •   Michael Lang    15 年前

    我的解决方案是:

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

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

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