草庐IT

替代者

全部标签

ruby - 猴子补丁核心类的替代品

我对Ruby还是个新手,基本上只是在读完Cooper的书后编写我的第一个微程序。我被指出了避免猴子修补的方向,但问题是我不知道实现相同行为的替代方案是什么。基本上,我想添加一个可供每个字符串对象访问的新方法。明显的猴子修补方法是:classStringdefdo_magic...magic...endend我记得有一种使用String.send的方法。但我不记得它是如何完成的,也不记得我是在哪里读到它的。谁能指出任何替代方案,让我仍然可以使该方法可用于String类和子对象? 最佳答案 任何其他的方式都会使猴子修补的语法更加笨拙。有

ruby - Ruby 中抽象类的替代品?

我是Ruby新手。一个简单的例子,我需要的:classAnimalabstracteat()classCat换句话说,所有扩展Animal的类都需要eat()方法。在JAVA中我只会使用抽象类,但经过一些研究后我发现很多人在Ruby中不使用它,而推荐使用mixin/modules。但是,我不明白,模块是否可以做的不仅仅是包含一个加法。确切地说,模块是否可以为类设置他们必须实现哪些方法的要求(如果是,将不胜感激)?总而言之,在这种情况下,当我想确定所有相同类型的类都有特定的方法并以自己的方式实现它们时,我应该使用什么? 最佳答案 使用

Ruby 的 vcr 的 Java 替代品?

是否有Ruby'sVCR的java替代品??据我所知,使用VCR的好处是巨大的,您可以运行“集成测试”并记录结果,将它们存储在本地某个地方。现在,从下次需要运行测试时起,您可以使用第一次运行时记录的数据模拟实际数据库命中。Java世界中有类似的东西吗?如果没有,如果我尝试实现它可能会遇到什么样的瓶颈?VCR只记录HTTP交互,但是否可以采用这种方法来记录,比如对其他团队的API的任何类型的数据库操作/函数调用,我不需要测试,基本上这将使我免于模拟所以通过自动化来完成很多事情。Here是带有Ruby单元测试的VCR示例: 最佳答案 查

ruby-on-rails - ActiveRecord::Errors 的 Rails 3 替代品是什么?

ActiveRecord::Errors的Rails3替代品是什么?在Rails2.3.8中,这是一个对象:>>ActiveRecord::Errors=>ActiveRecord::Errors在Rails3.0.0rc中,你会得到一个NameError:>>ActiveRecord::ErrorsNameError:uninitializedconstantActiveRecord::Errorsfrom(irb):2我正在尝试制作wizardly生成器与Rails3一起工作。$railsgwizardly_scaffoldhome但失败了:/Library/Ruby/Gems/1

ruby - 实现 Ruby 的 IO.popen() 和 system() 的替代品

Ruby中的IO.popen()和system()严重缺乏一些有用的功能,例如:获取函数的返回值同时捕获stdout和stderr(单独和合并)在不产生额外的cmd.exe或/bin/sh进程的情况下运行Python有一个模块“subprocess”,我正在考虑将其用作Ruby中类似模块的灵感。现在回答问题:Ruby程序员如何解决上述问题,例如在执行popen()调用时获取返回值?这是否已经实现? 最佳答案 看看标准的Ruby库open3.这将使您能够访问标准输入、标准输出和标准错误。还有一个名为open4的外部项目,它允许您在不使

ruby - Ruby 版本管理器 (rvm) 的替代品有哪些?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。rvm对ruby​​编程产生了重大影响,并在很长一段时间内为我们带来了持久的好处,但老实说,此时我需要保持敏捷并了解其他可能性。最近我只有一个版本的Ruby需要管理,所以我不确定yield是否超过配置成本。另一种选择,rbenv,对我来说效果很好。rbenv是一个替代方案,因为它让我们可以在每个用户的基础上设置全局ruby​​版本,并且像rvm一样提供对

ruby - 是否有比 Net::HTTP 更用户友好的替代方案来与 REST API 交互?

Net::HTTP对于标准用例来说可能相当麻烦! 最佳答案 如果你只需要处理REST,rest-client图书馆很棒。如果您使用的API不是完全RESTful-或者即使它们是-HTTParty真的很值得一试。它简化了RESTAPI以及非RESTfulWebAPI的使用。查看此代码(从上面的链接复制):require'rubygems'require'httparty'classRepresentativeincludeHTTPartyformat:xmldefself.find_by_zip(zip)get('http://who

ruby - 你知道 Ruby 的替代 ctags 生成器吗

ExumerantCtags不适用于Ruby,你可以看到ruby​​.c代码中有很多hack,基本上它无法识别很多情况。其中最重要的一点是:classSomeModule::SomeClassendCtags生成:SomeModulesomeclass.rb/^classSomeModule::SomeClass$/;"c这是错误的。正确且预期的条目是:SomeClasssomeclass.rb/^classSomeModule::SomeClass$/;"c这是非常有限的。有一些可用的ctags补丁不起作用,例如https://github.com/xtao/overlay/blob

ruby-on-rails - accepts_nested_attributes_for的替代方法-也许是virtus

我对rails比较陌生,最终找到了正确的使用accepts_nested_attributes_for的方法。然而,网络上有一些严肃的资源说,使用accepts_nested_attributes_for通常是一种不好的做法(比如这个one)。要避免accepts_nested_attributes_for需要做哪些更改,以及将附加类文件放在哪个文件夹中(我想需要一个附加类)。我读到virtus适合这个。对吗?下面是一个仍然使用accepts_nested_attributes_for的非常基本的示例(查找完整的示例here):模型classPerson控制器classPeopleCo

ruby-on-rails - Rails 替代 Django 管理面板/CRUD View 生成器?

我目前正在尝试在Rails和Django之间做出决定。目前我发现ruby​​更优雅,所以我考虑Django的唯一原因是管理面板..我没有任何经验,但我必须在截止日期前快速开发应用程序。Rails中是否有一种方法可以根据您的模型(如django中的管理面板)为您的所有CRUD操作生成一组(接近生产就绪的)View?(即它会查看您的模型并看到您有一个属于某个组的人,并在创建人员View上为该组生成一个下拉列表)?如果不是,那是获得所有CRUDView初稿的最快方法(无需手动编写)?谢谢,丹尼尔 最佳答案 有趣的工具http://acti