jjzjj

ruby - 我怎样才能将这段代码转换为元编程,这样我就可以停止复制它了?

我有一个用于building.netsystemswithruby/rake的小但不断增长的框架,我已经研究了一段时间了。在此代码库中,我有以下内容:require'rake/tasklib'defassemblyinfo(name=:assemblyinfo,*args,&block)Albacore::AssemblyInfoTask.new(name,*args,&block)endmoduleAlbacoreclassAssemblyInfoTask此代码遵循的模式在框架中重复了大约20次。每个版本的区别在于正在创建/调用的类的名称(而不是AssemblyInfoTask,它可

ruby-on-rails - AASM 不适用于我的 rails 3 和 ruby​​ 1.8.7(未定义方法 `name' 为 nil :NilClass )

我正在使用Rails3.2.2,带有aasmgem,我有这样的Document模型:classDocumenttruestate:readstate:closedevent:viewdotransitions:to=>:read,:from=>[:unread]endevent:closedotransitions:to=>:closed,:from=>[:read,:unread]endend现在在我的控制台上:➜✗bundleexecrailscLoadingdevelopmentenvironment(Rails3.2.2)irb(main):006:0>Document.cre

ruby - 使用 Ruby 按值过滤 JSON 数组

我有一个看起来像这样的JSON数组。[{"name":"Idaho","state":{"id":1,"name":"A"}},{"name":"Wyoming","state":{"id":1,"name":"A"}},{"name":"Montana","state":{"id":2,"name":"B"}},{"name":"SouthDakota","state":{"id":1,"name":"B"}}]我如何使用Ruby只显示A的值?我不认为sort_by会是答案,因为我下面的内容只是按字母顺序对它们进行排序。我想完全排除B的所有结果。.sort_by{|a|[a.stat

ruby - 在没有 rails 的 ruby​​ 中实现一个 rails before_filter

我在所有类(class)中都使用galogger。我希望每个消息都以类名和方法名开头,如下所示:Class_name::Method_name这就是我现在正在做的:classFOOdefinitializeenddefbarmsg_prefix="#{self.class}::#{__method__}"...somecode...@logeer="#{msg_prefix}msg..."enddefbar2msg_prefix="#{self.class}::#{__method__}"...somecode2...@logeer="#{msg_prefix}msg2..."ende

Ruby:获取变量名

这个问题在这里已经有了答案:Ruby-printthevariablenameandthenitsvalue(8个答案)关闭9年前。如何获取变量名?例如,defget_var_name(var)#returnvariablenameendmyname=nilget_var_namemyname#=>myname初始目的:somevar="value"putisomevar#=>somevar="value"#thatisashortagefor#`puts"somevar=#{somevar.inspect}"`我的尝试:defputi(symb)var_name=symb.to_sv

ruby-on-rails - rails : How do I autocomplete search for Name but save ID?

我用过这个视频http://railscasts.com/episodes/102-auto-complete-association-revised在我的应用程序的表单中设置自动完成搜索输入。(该视频可能仅供成员(member)使用,因此我也会发布我的代码。本质上,它会搜索数据库(名称)的一列,并在您键入时在下拉列表中自动完成。这一切都很好,但是,我想要什么表单要做的是提交与名称相关的ID,而不是名称本身。我假设没有简单的方法可以仅在View中执行此操作。任何帮助都会很棒。下面的代码,让我知道是否有任何其他代码有帮助。谢谢Controller:defgame_namegame.try

ruby - 如何优化 ActiveRecord find_in_batches 查询?

我正在使用Rails4.0.0和Ruby2.0.0。我的Post(如在博客文章中)模型与用户相关联,该用户具有用户的user_name、first_name、last_name的组合。我想迁移数据,以便通过外键(即用户ID)将帖子关联到用户。我在posts表中有大约1100万条记录。我在Linux服务器上使用rake任务运行以下代码来迁移数据。然而,我的任务一直被服务器“杀死”,大概是由于rake任务,特别是下面的代码,消耗了太多内存。我发现将batch_size降低到20并将sleep(10)增加到sleep(60)允许任务运行更长的时间,在不被杀死的情况下总共更新更多的记录,但需要

ruby - Ruby 中 lambda 和 def method_name 的区别

我正在阅读Pickaxe1.9,作者是这样使用lambda的:bo=lambda{|param|puts"Youcalledmewith#{param}"}bo.call99=>'Youcalledmewith99'bo.call"cat"=>'Youcalledmewithcat'我的问题是:这与仅定义一个执行相同操作的方法相比有何更好/更差/不同之处?像这样:defbo(param)puts"Youcalledmewith#{param}"endbo("hello")=>'Youcalledmewithhello'对我来说,lambda语法似乎更令人困惑,更像意大利面条。

ruby - 理解 Ruby 类实例变量

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:WhydoRubysettersneed“self.”qualificationwithintheclass?有人可以解释以下内容之间的区别,以及为什么它不像人们预期的那样:#version#1classUserdefinitialize(name,age)@name=name@age=ageendend#version#2classUserattr_accessor:name,:agedefinitialize(name,age)@name=name@age=ageendend#version#3class

ruby - Jekyll YAML 嵌套列表抛出错误 : found a tab character that violate intendation

这是我正在使用的列表。-name:Game1platforms:{win32,win64,linux64}distribution:-name:hereurl:null-name:desuraurl:http://www.desura.com/games/Game1source:https://github.com/name/Game1description:cg/games/Game1/description.htmlrelease:2013-06-23这是它抛出的错误:jekyll2.2.0|Error:(C:/Users/User/jekyll-site/_data/games.