Tag: ruby

在Ruby中读取文件的第一行

我想以最快,最简单,最习惯的方式使用Ruby读取文件的第一行。 什么是最好的方法? (具体来说:我想在我最新的Capistrano部署的Rails目录中读取REVISION文件中的git commit UUID,然后将其输出到我的标记中,这将使我看到在浏览器中部署了什么版本的服务器。如果有一个完全不同的更好的方法来做到这一点,请让我知道。)

Rubydevise模式:如何创build一个可扩展的工厂类?

好吧,假设我有Ruby程序来读取版本控制日志文件,并对数据做些什么。 (我不知道,但情况是类似的,我对这些类比感到很开心)。 我们现在假设我想支持Bazaar和Git。 假设程序将会执行某种参数,指出正在使用哪个版本控制软件。 鉴于此,我想创build一个LogFileReaderFactory,给定版本控制程序的名称将返回一个适当的日志文件读取器(从通用的子类)读取日志文件,并吐出一个规范的内部表示。 所以,当然,我可以制作BazaarLogFileReader和GitLogFileReader,并将它们硬编码到程序中,但是我希望这样做可以增加对新版本控制程序的支持,就像添加一个新的类文件一样简单在与Bazaar和Git读者的目录中。 所以,现在你可以调用“do-something-with-the-log -software git”和“do-something-with-the-log-software bazaar”,因为那里有日志读取器。 我想要的是可以简单地将SVNLogFileReader类和文件添加到同一个目录,并自动调用“do-something-with-the-logs -software svn”,而不对其余的程序。 (这些文件当然可以用特定的模式来命名,并在require调用中循环播放。) 我知道这可以在Ruby中完成…我只是不知道该怎么做…或者如果我应该这样做。

轨3,如何添加一个视图,不使用相同的布局作为rest的应用程序?

我无法find关于如何构build我的应用程序的任何文档或示例,以允许同一控制器中的不同视图使用完全不同的布局和样式表。 我们的应用程序是脚手架,然后我们使用漂亮的发电机生成的意见,然后添加deviseauthentication。 我们有两个模型的视图和控制器:小部件和公司。 我目前有一个布局:layouts / application.html.haml,我没有看到引用任何地方,所以我认为(一个新手),它总是使用命名约定。 我现在需要在同一个控制器中添加几个视图(对于移动浏览器),它们具有不同的样式表和布局(例如,右上angular没有login/注销链接)。 如何做到这一点?

在哪里定义了rake任务?

在新创build的Rails项目(由rails someName生成)上,可以运行一些“默认”rake任务,如: rake test rake db:migrate 等等 问题是,这些任务在哪里被描述? 默认的Rakefile没有所有这些任务。 此外,我检查了一些使用rspec项目,我可以运行rake spec来运行所有的testing。 spec目标在哪里定义?

将两个arrays组合成哈希

我有两个arrays: members = ["Matt Anderson", "Justin Biltonen", "Jordan Luff", "Jeremy London"] instruments = ["guitar, vocals", "guitar", "bass", "drums"] 我想要做的就是把这些结合起来,这样生成的数据结构就像这样: {"Matt Anderson"=>["guitar", "vocals"], "Justin Biltonen"=>"guitar", "Jordan Luff"=>"bass", "Jeremy London"=>"drums"} 注意“Matt Anderson”的值现在是数组而不是string。 任何Ruby的巫师都在乎这个镜头? 我知道Hash[*members.zip(instruments).flatten]结合他们几乎是我想要的方式,但怎么把“吉他,人声”string变成一个数组? 谢谢。

Rails控制器的Ruby帮手方法的位置?

我有一些Ruby方法(或所有)控制器需要。 我试图把它们放在/app/helpers/application_helper.rb 。 我用它来在视图中使用的方法。 但是控制器没有看到这些方法。 是否有另一个地方,我应该把他们或我需要访问这些帮手方法不同? 使用最新的稳定的Rails。

我如何在Ruby中做标准偏差?

我有几个具有给定属性的logging,我想find标准偏差。 我怎么做?

Python中是否有像Ruby中的“=”或“equals”的函数?

如果没有,最好的办法是什么? 现在我正在做(为一个Django项目): if not 'thing_for_purpose' in request.session: request.session['thing_for_purpose'] = 5 但相当尴尬。 在Ruby中,它将是: request.session['thing_for_purpose'] ||= 5 这更好。

CocoaPods无法在macOS高Sierra

升级到macOS后高Sierra CocoaPods不工作。 虽然它是从CocoaPods远离的诱惑,但不幸的是现在不在范围之内。 错误消息如下。 zsh: /Users/****/.gems/bin/pod: bad interpreter: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin: no such file or directory 我意识到错误源于Ruby被升级,但是简单修复是什么? 试图使CocoaPods使用新的ruby版本产生其他错误。 编辑:现在我安装了Ruby 2.0与rvm install 2.0.0和rvm use 2.0.0 ,然后重新安装CocoaPods sudo gem install cocoapods 。 似乎正在工作。

将string转换为特定的date时间格式

串 "2011-05-19 10:30:14" 至 Thu May 19 10:30:14 UTC 2011 如何将特定string转换为此date格式?