jjzjj

ruby-on-rails - 是否有 Ruby 数据库迁移 gem,可帮助您将内容从旧结构移动到新结构?

是否有任何Rubygem/库可以帮助您从旧的数据库结构迁移到新的结构?ActiveRecord迁移在跟踪新数据库结构方面做得很好,但我想知道是否有什么可以帮助您将整个遗留数据库迁移到新结构:transfer_from(:source_table=>'person',:destination_table=>'dudes_and_dudets')dofrom:name,:to=>:full_namefrom:dob,:to=>:agedo|dob|#thiswould,forexample,loadtheresult(Date.today-dob)/60/60/24/365#ofthebl

ruby - 如何安装旧版本的 Jekyll?

我想安装Jekyll1.5.1版(在Mac上)。是否有可能做到这一点?我发现了一些关于能够降级的信息,但我很难相信没有办法只安装旧版本。谢谢! 最佳答案 您可以像这样在Gemfile中指定确切的版本:gem'jekyll','1.5.1'或者从命令行安装特定版本:geminstalljekyll-v1.5.1 关于ruby-如何安装旧版本的Jekyll?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

ruby-on-rails - 使用旧版本的 Rake

我有Rake版本0.9.1,但我需要为一个项目使用0.8.7,我相当确定我安装了这两个版本,但它始终默认使用0.9.1。有没有办法指定使用哪个版本的Rake?我正在尝试运行这个:rakedb:dropdb:createdb:migratedb:seed我得到这个错误:您已经激活了rake0.9.1,但是您的Gemfile需要rake0.8.7。考虑使用bundleexec。 最佳答案 gem搜索(或列表)rake,应该会告诉您安装了哪些版本。您可以调用带有括号中的特定版本号的rake下划线。$rake_0.7.3_这是gem打包二进

ruby - Sinatra:提供普通旧文件的正确方法是什么?

这是有效的,但它是在黑暗中刺伤。我对Ruby知之甚少。为给定资源提供普通旧文件的公认方式是什么?get'/xyz'doFile.read'abc.html'end 最佳答案 您可以使用set:public来指定静态文件的目录。然后,您可以使用send_file()提供文件,例如:get'/static_file'dosend_file('my_static_file')end 关于ruby-Sinatra:提供普通旧文件的正确方法是什么?,我们在StackOverflow上找到一个类似的

ruby-on-rails - 如何切换到旧版本的 Rails

我正在尝试阅读2011年写的一本旧书。所以,随机选择3.1.3自2011年11月以来的版本。如何在我的RVM中切换到该版本?目前有Rails4.0.0.beta1版本...请不要建议将它放在Gemfile中,因为有很多其他依赖项处理起来太麻烦,因此如果我只是切换,我假设这意味着其他依赖项将被占用同时照顾得太多了吧?更新**-s-MacBook-Pro:agile**$rails-vRails4.0.0.beta1**-s-MacBook-Pro:agile**$geminstallrails-v3.1.3Successfullyinstalledrails-3.1.31geminsta

ruby-on-rails - 旧 Rails 应用程序出现奇怪的 Rails 错误 "permission denied: bin/rails"

每当我运行rails(或任何rails命令)时,我都会收到此错误_rails_command:2:权限被拒绝:bin/rails仅当我在一些旧的rails应用程序目录中时。在这些目录中,bundleexecrailsc命令有效,但rails甚至rails-v无效。背景:我将我的编码工作区保存在保管箱文件夹中。现在我最近安装了Manjaro,因此我从以前的操作系统下载的所有Rails应用程序我称之为旧Rails应用程序。简而言之:除了旧的Rails应用程序外,Rails在任何地方都可以正常工作。bundleexecrailsc工作正常。我试过的Ruby版本:2.0.0(rvm),2.1.

ruby - 如何从命令行调用旧版本的 gem?

假设我安装了两个版本的gem(somegem版本0.10.6和0.10.5)并且我想从命令行运行早期版本。我必须卸载较新的版本吗?有没有一种方法可以使用标志来指定我要使用的版本?有点像……somegem/path/to/dir--version0.10.5我查看了ruby​​gems文档,它只描述了当您需要文件中的gem时如何使用特定版本,但没有说明如何从命令行执行此操作。 最佳答案 somegem_0.10.5_/path/to/dir没有指向文档的链接,因为显然没有。 关于ruby-

ruby - 我如何在普通的旧 ruby (非轨道)中使用轨道助手 "distance_of_time_in_words"

Rails有一个助手,它使用distance_of_time_in_words将时间距离转换为单词如果我只是在irb提示符下使用ruby​​来获取此功能,我需要包括什么?我试过require'action_view'但没有用。我也试过require'active_support/core_ext'但这也没有帮助。 最佳答案 这应该有效:需要“action_view”包含ActionView::Helpers::DateHelper由于几个原因,这两项都需要完成。首先,您需要要求该库,以便可以调用它的模块和方法。这就是您需要执行req

ruby - 覆盖子类中的 ruby​​ 常量,以便继承的方法使用新常量而不是旧常量?

在Ruby中,有没有一种方法可以“覆盖”子类中的常量,从而调用从子类继承的方法导致该方法使用新常量而不是旧常量?例如:classSuperClassCONST="Hello,world!"defself.say_helloCONSTendendclassSubClass"Hello,world!"SubClass.say_hello#=>"Hello,Bob!"如果没有,是否有办法改为执行类似的操作?classSuperClassCONST="Hello,world!"defself.say_helloCONSTendendSubClass=SuperClass.cloneSubCla

ruby-on-rails - 当您的 Gemfile 需要旧版本的 bundler 时如何将其设置为 `bundle install`?

我在一个有Gemfile的旧Rails项目中。我试图将gem添加到Gemfile和bundleinstall但出现错误:Bundlercouldnotfindcompatibleversionsforgem"bundler":InGemfile:rails(=3.0.0)rubydependsonbundler(~>1.0.0)rubyCurrentBundlerversion:bundler(1.1.5)ThisGemfilerequiresadifferentversionofBundler.它使用的Rails版本需要bundler~>1.0.0但我已经安装了1.1.5并且正在将它