当前位置:  开发笔记 > 后端 > 正文

gemspec中的条件ruby gem依赖项

如何解决《gemspec中的条件rubygem依赖项》经验,为你挑选了0个好方法。

我正在构建一个在迁移中使用外键的rails引擎.

    add_foreign_key "theblog_content_nodes",
                    "theblog_content_statuses", column: :content_status_id

从版本4.2rails开始支持外键,但在我们使用foreignergem 之前.如果我们尝试使用foreignerrails 4.2和更新,我们得到一个错误.

所以,因为我要从4.0.1开始支持rails,所以我必须在我的gemspec中使用条件依赖.

我在这里找到了可能的解决方案,但我不知道如何检查gemspec中的rails版本.

# sidekiq-spy.gemspec

if RUBY_VERSION >= '2.1'
  spec.add_development_dependency "curses", "~> 1.0"
end

注意:

我有另一个临时解决方案:我只是检查Foreigner迁移中的可用性.如果它不可用我只是不创建外键:

if defined?(Foreigner)
  add_foreign_key "theblog_content_nodes",
                  "theblog_content_statuses", column: :content_status_id
end

但是我想foreigner为旧的rails版本添加依赖项.

推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有