草庐IT

some_method_string

全部标签

ruby-on-rails - Rails 迁移 : tried to change the type of column from string to integer

我使用railsgeneratemigrations命令在我的rails应用程序中创建了一个表。这是迁移文件:classCreateListings然后我想将纬度和经度存储为整数我试着跑:railsgeneratemigrationchangeColumnType该文件的内容是:classChangeColumnType我原以为列类型会发生变化,但是rake被中止并出现了以下错误消息。我想知道为什么这没有通过?我在我的应用程序中使用postgresql。rakedb:migrate==ChangeColumnType:migrating=========================

ruby - 轨道 3/ ruby : ActiveRecord Find method IN condition Array to Parameters single quote issue

我在微博模型上创建了一个方法,它接受一个user_id数组。在此方法中,我使用以下“查找”方法来提取数组中所有用户的所有帖子。find(:all,:conditions=>["user_idIN(?)",args.join(',')])但是当ActiveRecord为这个查询生成SQL时,它用单引号将逗号分隔的ID列表括起来。这会导致查询只提取单引号内第一个数字的帖子,而不是所有数字。SELECT`microposts`.*FROM`microposts`WHERE(user_idIN('3,4,5'))ORDERBYmicroposts.created_atDESC查询应该看起来像这

ruby - 如何使用 define_method 指定方法默认参数?

define_method可用于定义方法:define_method(:m)do|a|end等同于:defm(a)end但是,以下使用define_method的等效形式是什么:defm(a=false)end请注意,我需要能够在不提供任何参数的情况下调用m()。 最佳答案 这实际上就像您在Ruby1.9中所期望的那样工作!define_method:mdo|a=false|end如果您需要1.8兼容性,但不一定需要闭包来定义您的方法,请考虑使用带有字符串参数的class_eval并定期调用def:class_eval否则请按照ph

ruby - 什么都不知道....在尝试 ri String#upcase Ruby 时

我刚刚安装了RVM,并且正在阅读TheWell-GroundedRubyist一书。在第一章中,我应该尝试riString#upcase查看有关upcase方法的文档,但是我收到一条消息:NothingknownaboutString#upcase我在SO上发现一些帖子告诉我这可能是因为未安装RDoc。但是我不明白如何修复它。我正在使用MacOSX10.6和最新的RVM。我只安装了1.9.2,此外还有标准的Ruby解释器,它随Apple的开发工具包一起提供。 最佳答案 您是否生成了文档?rvm文档生成https://rvm.io/r

ruby - 页面对象模型 : why not include assertions in page methods?

第一张海报。我从事UI自动化工作多年,但直到最近才被介绍/受命使用页面对象模型。其中大部分是常识,包括我已经使用过的技术,但有一个特别好的地方我无法在自己的脑海中证明,尽管广泛搜索了合理的解释。我希望这里有人能启发我,因为这个问题在我尝试将POM与我自己的最佳实践集成时引起了一些惊愕。来自http://code.google.com/p/selenium/wiki/PageObjects:Thecodepresentedaboveshowsanimportantpoint:thetests,notthePageObjects,shouldberesponsibleformakingas

ruby-on-rails - Carrierwave,MiniMagick - NoMethodError : undefined method `size' for nil:NilClass

在暂存过程中,我在通过carrierwave和minimagick上传和调整图像大小时遇到​​以下错误。在本地一切正常。载波(0.9.0)迷你魔法(3.7.0)irb(main):003:0>PicturePost.create(remote_content_url:'http://www.imagpress.com/img/slider/slider_1.jpg')NoMethodError:undefinedmethod`size'fornil:NilClassfrom/home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/g

ruby-on-rails - rails : Overriding ActiveRecord association method

有没有办法覆盖ActiveRecord关联提供的方法之一?例如,我有以下典型的多态has_many:throughassociation:classStory:taggablehas_many:tags,:through=>:taggings,:order=>:nameendclassTag:destroyhas_many:stories,:through=>:taggings,:source=>:taggable,:source_type=>"Story"end您可能知道,这会向Story模型添加一大堆关联方法,例如标签、标签我如何着手覆盖这些方法之一?特别是tagsdeftags调

ruby-on-rails - rails 3 : alias_method_chain still used?

我刚刚阅读有关Rails3的Gems/Plugin开发并遇到了thispost这表示不再使用alias_method_chain。我可以看到该方法仍然存在于activesupport-3.0.0/lib/active_support/core_ext/module/aliasing.rb中。我还应该在Rails3中使用alias_method_chain吗?是this是否仍然反射(reflect)了Rails3中想要修改ActiveRecord的gem/插件的最佳实践? 最佳答案 不,它已被巧妙地使用模块中的方法覆盖和super关键

ruby - "private"、 "public"和 "protected methods"之间有什么区别?

我正在学习Ruby,但已经到了让我感到困惑的地步。我正在使用的书上讲的是private、public和protectedmethods,但我还是有点糊涂。它们之间有什么区别? 最佳答案 公共(public)-可以从任何地方调用Private-不能在类作用域外调用该方法。对象只能给自己发送消息例如:面包师有bake方法是公开的,但break_eggs是私有(private)的protected-只要默认对象self是与您正在调用其方法的对象相同的类的实例,您就可以调用对象的protected方法例如:使用n保护方法,c1可以要求c2执

ruby-on-rails - rails : How to downcase non-English string?

如何在RubyonRails3中将非英语字符串小写?str="Привет"#Russianputsstr[0].ord#=>1055str.downcase!putsstr[0].ord#=>1055(Shouldbe1087)我希望它能在Ruby1.8.7和Ruby1.9.2中工作。 最佳答案 str="Привет"str.mb_chars.downcase.to_s#=>"привет" 关于ruby-on-rails-rails:Howtodowncasenon-English