草庐IT

ruby-on-rails - Rails 3. 如何在模型中明确地将数字四舍五入到小数点后两位?

这个问题在这里已经有了答案:关闭11年前。社区在20天前审查了是否重新打开此问题并使其关闭:原始关闭原因未解决PossibleDuplicate:Rails3.Howdodisplaytwodecimalplacesineditform?我知道我可以使用sprintf来限制小数点后两位。当我在表格或表格中重新显示价格时,有时我会得到80,而不是80.00。从价格输入数据库的那一刻起,就将价格保留在小数点后两位不是更好吗?这样,无论何时显示,它都会始终显示两位小数。如果是,怎么办?

Ruby 单例方法 (class_eval, define_method) vs (instance_eval, define_method)

Ruby中的元编程很棒,因为我经常使用它来模拟基于原型(prototype)的编程,并快速编写一些问题的原型(prototype)解决方案来测试它们的可行性。所以我想知道下面这段代码是否有本质区别:(class和(class代码的两个版本都定义了一个单例方法,我还没有遇到任何迫使我选择(instance_eval,define_method)组合而不是(class_eval,define_method)组合来定义单例方法,我想知道两者之间是否存在一些本质区别。 最佳答案 define_method没有区别。但是当您使用def时会有所

ruby-on-rails - 从父类(super class)调用子类方法

前言:这是在Rails应用程序的上下文中。然而,这个问题是特定于Ruby的。假设我有一个Media对象。classMedia我在几个子类中扩展了它:classImage在Media类中,我想从适当的子类中调用show的实现。因此,对于Media,如果self是一个Video,那么它将调用Video的show方法。如果self是Image,它将调用Image的show方法。我有Java背景,首先想到的是“在父类(superclass)中创建一个抽象方法”。但是,我在多个地方(包括StackOverflow)读到抽象方法并不是在Ruby中处理此问题的最佳方式。考虑到这一点,我开始了rese

ruby - 如何从命令行获取 Ruby 文档

这个问题在这里已经有了答案:WhydoesmyRuby'ri'toolnotreturnresultsincommandprompt?[duplicate](1个回答)关闭9年前。社区在上个月审查了是否重新打开此问题并使其关闭:原始关闭原因未解决有没有办法找出我的ri命令的哪一部分没有显示Ruby的文档:$ruby--versionruby1.9.3p392(2013-02-22revision39386)[i686-linux]$ri--versionri3.12.2$riStringNothingknownaboutString当我使用pry时:$pry--versionPryve

ruby-on-rails - 从 rails 获取所有模型的列表

这个问题在这里已经有了答案:IsthereawaytogetacollectionofalltheModelsinyourRailsapp?(29个答案)关闭8年前。我需要一个包含所有模型(class_names)的列表,这些模型末尾有模式“Cube”。例子:我所有的模型:ModelFoo、ModelBar、ModelBarCube、Mode2BarCube我需要的:['ModelBarCube','Mode2BarCube']

ruby - 全新安装 OSX 10.9.1 在尝试安装 gems 时返回 "undefined method ` path2class'"

我刚刚使用Homebrew和RVM安装了一个干净的Mavericks安装。brewdoctor和rvmrequirements都返回“allgood”,但是,当我在我的项目目录中运行bundleinstall时,我的大多数gem安装都很好,但少数安装失败并出现相同的以下错误:Bundler::GemspecError:Couldnotreadgemat/Users/NK/.rvm/gems/ruby-2.0.0-p353/cache/eventmachine-1.0.3.gem.Itmaybecorrupted.Anerroroccurredwhileinstallingeventma

ruby-on-rails - Ruby 源代码自动格式化程序

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭3年前。Improvethisquestion什么是最好的选择?我发现:https://github.com/jasonl/edenhttp://www.arachnoid.com/ruby/rubyBeautifier.html但它们似乎都有些过时了。对Rails的特殊支持(知道要自动格式化哪些文件和其他一些很酷的东西)将是一个加号,还有一个git钩子(Hook)脚本。

ruby - 为什么扩展模块中的常量在用 self. 声明的类方法中不可用?

我认为在class中声明的方法之间没有区别block和用self.声明的block前缀,但有:moduleAVAR='some_constant'endclassBextendAclassOKB.m2#=>uninitializedconstantB::VAR为什么A的常量是可用m1但不在m2? 最佳答案 在Ruby中,常量查找与方法查找不同。对于方法查找,调用foo始终与调用self.foo相同(假设它不是私有(private)的)。调用常量FOO与self::FOO非常不同或singleton_class::FOO.使用非限定常

Ruby 打印散列键和值

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭9年前。Improvethisquestion我正在尝试打印键:值目前,我在尝试运行代码时不断遇到错误。代码:output.eachdo|key,value|putskey+':'+valueend我想不出在同一行上执行此操作的方法。我尝试了各种实现,比如使用

ruby - 为什么以及何时使用 shell 而不是 Ruby

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion因为我熟悉Ruby,所以我打算使用它在OSX上编写一些脚本。但后来我想,也许我错过了船。我知道有很多理由更喜欢Ruby而不是Bash(或任何与sh兼容的命令语言解释器),但我不知道有什么理由不这样做。直接对shell进行编程有什么好处?我打算在必要时使用system来利用系统命令。注意:我已经知道Ruby不会一直存在,但我主要对技术、语义和句法标准感兴趣。Ruby并不总是存在,我的意思是它