草庐IT

an-Apple-Developer-Account

全部标签

ruby-on-rails - Rails 3.1 与 PostgreSQL : GROUP BY must be used in an aggregate function

我正在尝试加载按user_id分组并按created_at排序的最新10个艺术。这适用于SqlLite和MySQL,但在我的新PostgreSQL数据库上出错。Art.all(:order=>"created_atdesc",:limit=>10,:group=>"user_id")ActiveRecord错误:ArtLoad(18.4ms)SELECT"arts".*FROM"arts"GROUPBYuser_idORDERBYcreated_atdescLIMIT10ActiveRecord::StatementInvalid:PGError:ERROR:column"arts.i

ruby-on-rails - rails : get a teaser/excerpt for an article

我有一个将列出新闻文章的页面。为了减少页面的长度,我只想显示一个预告片(文章的前200个单词/600个字母),然后显示一个“更多...”链接,单击该链接将展开其余部分jQuery/Javascript方式的文章。现在,我已经弄明白了,甚至在某个粘贴页面上找到了以下辅助方法,这将确保新闻文章(字符串)不会在单词中间被截断:defshorten(string,count=30)ifstring.length>=countshortened=string[0,count]splitted=shortened.split(/\s/)words=splitted.lengthsplitted[0

ruby - 基本元编程 : extending an existing class using a module?

我希望我的模块的一部分能够扩展String类。这行不通moduleMyModuleclassStringdefexclaimselfNoMethodError但这样做moduleMyModuledefexclaimself"thisisastring!!!!!"我不希望MyModule的所有其他功能都被String束缚。在最高级别再次包含它似乎很丑陋。当然有更简洁的方法来做到这一点? 最佳答案 exclaim第一个示例中的方法是在一个名为MyModule::String的类中定义的,与标准无关String类(class)。在您的模块

ruby-on-rails - Ruby BigDecimal 圆 : Is this an error?

在用一个表示为BigDecimal的值编写测试时,我遇到了一些奇怪的事情并决定深入研究它。简而言之,四舍五入到小数点后两位的“0.00009”返回为0.01而不是0.00。真的。这是我的脚本/控制台捕获:>>bp=BigDecimal('0.09')=>#>>bp.round(2,BigDecimal::ROUND_HALF_DOWN).to_f=>0.09>>bp=BigDecimal('0.009')=>#>>bp.round(2,BigDecimal::ROUND_HALF_DOWN).to_f=>0.01>>bp=BigDecimal('0.0009')=>#>>bp.roun

ruby : how to prevent modification of an array instance variable through an attribute reader

抱歉这个菜鸟问题...假设我们有:classTestMeattr_reader:arraydefinitialize@array=(1..10).to_aend结束然后可以这样做:>>a=TestMe.new=>#>>a.array.map!&:to_s=>["1","2","3","4","5","6","7","8","9","10"]>>a.array=>["1","2","3","4","5","6","7","8","9","10"]这显然不利于封装,不是吗?有什么方法可以快速保护数组变量不被更改吗?...或者每当我的实例变量具有“破坏性”方法时,我是否需要实现一个深拷贝读取

ruby - 公寓 ruby gem : Want to Catch an exception

我正在使用这个apartmentruby。我在application.rb文件中添加了这个:config.middleware.use'Apartment::Elevators::Subdomain'当我尝试在PostgreSQL中不存在子域“test”模式的浏览器url“test.domain.local:3000”中点击这个时,我看到了这个错误Apartment::SchemaNotFound(Oneofthefollowingschema(s)isinvalid:test,"public")我知道这是gem的正常行为,但想捕获此异常并将用户重定向到其他页面,我该怎么做?

ruby - capybara -webkit : automatically save a screenshot on an RSpec test failure

当使用带有Rspec的capybara-webkit测试失败时,如何自动保存html和屏幕截图?如何在RSpec测试失败时执行回调。奖励积分:如何避免出现以下错误:Capybara::Driver::Webkit::WebkitInvalidResponseError执行这段代码时:require'capybara/util/save_and_open_page'path="/#{Time.now.strftime('%Y-%m-%d-%H-%M-%S')}"png=Capybara.save_and_open_page_path+"#{path}.png"page.driver.re

ruby-on-rails - 验证失败 : Upload file has an extension that does not match its contents

我正在使用回形针gem上传文件。我的回形针gem版本是paperclip-4.1.1。上传文件时抛出Validationfailed:Uploadfilehasanextensionthatdoesnotmatchitscontents.我正在尝试上传xlsx文件。而且我已经在模型content_type中提到了这一点。validates_attachment_content_type:upload_file,:content_type=>%w(application/mswordapplication/vnd.ms-officeapplication/vnd.ms-excelappl

ruby-on-rails - rails : How to test if an attribute of a class object is required in the model policy?

简单地说,我有一个模型用户,其中包含名称、电子邮件和评论作为属性。validates_presence_of:namevalidates_presence_of:email所以“姓名”和“电子邮件”是必需的,但不是“评论”。my_user=User.new我想找到一种方法来测试像my_user.name.required?或User.name.required?类似的东西。我的目标是创建一个表单,并根据该项目是否设置为“validates_presence_of”,将特定类动态添加到表单项目span或td我试图搜索它,但没有找到任何相关信息。有没有简单的方法可以做到这一点?谢谢

ruby 公案 : test_nil_is_an_object

我最近尝试使用这个工具来提高我的Rails技能:http://github.com/edgecase/ruby_koans但我无法通过一些测试。此外,我不确定我是否正确地做了一些事情,因为目标只是通过测试,有很多方法可以通过它,我可能正在做一些不符合标准的事情。有没有办法确认我做的事情是否正确?具体例子:在about_nil中,deftest_nil_is_an_objectassert_equal__,nil.is_a?(Object),"UnlikeNULLinotherlanguages"end它是告诉我检查第二个子句是否等于一个对象(所以我可以说nil是一个对象)或者只是把as