草庐IT

castle-activerecord

全部标签

ruby-on-rails - 常量 Logger::Format not defined (NameError) with activerecord

当我在env.rb中需要'active_record'时,我遇到了错误constantLogger::Formatnotdefined(NameError)/usr/local/rvm/gems/ruby-1.9.3-p125@test/gems/activerecord-1.6.0/lib/active_record/support/clean_logger.rb:5:inremove_const'/usr/local/rvm/gems/ruby-1.9.3-p125@test/gems/activerecord-1.6.0/lib/active_record/support/cle

ruby-on-rails - RoR 从 ActiveRecord::Relation 中获取属性

我是RoR的新手。请告诉我如何从ActiveRecord::Relation获取属性?例如我写:@user=User.where(code:123)接下来我要获取属性idid=@user.id但是这个方法行不通。提前致谢 最佳答案 当使用.where时,它会给你一个activerecordrelation所以你不能直接在它上面找到id因为它是一个关系而不是一个单一的模型对象。修复:你可以做到@user=User.where(code:123).first或您可以使用dynamicfinders@user=User.find_by_c

sql - Rails ActiveRecord where 子句

我想使用where子句从数据库中选择Cars,为我的问题寻找最佳DRY方法。例如我有这两个参数params[:car_model_id](int)params[:transmission_id](int)params[:from_date]params[:to_date]但我不知道哪个会是nullifparams[:car_model_id].nil?&&!params[:transmission_id].nil?ifparams[:from_date].nil?&¶ms[:from_date].nil?returnCar.where(:transmission_id=>par

ruby-on-rails - 编写简单 ActiveRecord 代码的更像 ruby​​ 的方式

这是一些相当标准的RubyonRails4ActiveRecord代码:defhide(user)self.hidden=trueself.hidden_on=DateTime.nowself.hidden_by=user.idenddefunhideself.hidden=falseself.hidden_on=nilself.hidden_by=nilenddeflock(user)self.locked=trueself.locked_on=DateTime.nowself.locked_by=user.idenddefunlockself.locked=falseself.lo

ruby-on-rails - 未应用 ActiveRecord cache_timestamp_format 配置

我正在尝试通过在application.rb或中设置此配置config.active_record.cache_timestamp_format=:nsec来更改迁移版本时间戳格式development.rb,就像这里所说的http://guides.rubyonrails.org/configuring.html#configuring-active-record.问题是这个配置被忽略了,不管我在那里设置的格式如何,当我生成一个新的迁移时,时间戳格式保持不变。我是不是做错了什么? 最佳答案 因为显然railsmigration忽略

ruby-on-rails - ActiveRecord::Relation.concat 在 Rails 5 中失败

愚蠢的问题,但我不确定为什么这在Rails4.2中有效,但在Rails5.2中无效。FamilyCharacteristic.where(family_id:@user.family_ids).concat(@user.characteristics)规范在5.2中失败:Failure/Error:FamilyCharacteristic.where(family_id:@user.family_ids).concat(@user.characteristics)NoMethodError:undefinedmethod`concat'for#Didyoumean?countconca

ruby-on-rails - 将 ActiveRecord 查询作为变量返回,而不是散列?

我正在对这样的模型进行ActiveRecord查找@foo=MyModel.find(:all,:select=>'year')如您所见,我只需要其中的年份列,所以我的理想输出是["2008","2009","2010"]相反,我得到了模型的哈希值,每个模型都包含年份,如下所示:[#,#,#]我可以循环遍历它以将其转换为我理想的输出:@years=[]forbarin@foo@years.push(bar.year)end但是有没有一种方法可以检索这个结果呢?(即不经过额外处理?)。如果没有,有什么更简洁的方式来做这个处理?谢谢。 最佳答案

ruby-on-rails - 对从 ActiveRecord 或 ThinkingSphinx 获取的集合进行排序

我有两个问题。有没有一种方法可以对ActiveRecord或ThinkingSphinx中的集合进行排序,而无需重新选择数据库/sphinx中的所有内容?即。@models=Model.where("foo=:foo",{:foo=>params[:foo]})models.some_code_or_method_which_will_resort_everything这个游戏是否值得一试(排序数组/集合而无需再次获取)?我想知道哪个选项对性能更好。提前致谢。编辑因此,当您:不要使用分页(必须有所有记录)使用ajax刷新页面div(不要通过调用索引或显示操作再次获取所有内容)为艺术而艺

ruby-on-rails - ActiveRecord find_each 和 Postgres

我收到以下错误:PGError:ERROR:operatordoesnotexist:charactervarying>=integerLINE1:...CT"games".*FROM"games"WHERE("games"."uuid">=0)ORDE...^HINT:Nooperatormatchesthegivennameandargumenttype(s).Youmightneedtoaddexplicittypecasts.:SELECT"games".*FROM"games"WHERE("games"."uuid">=0)ORDERBY"games"."uuid"ASCLI

ruby-on-rails - Rails3 - 如何获取 ActiveRecord 模型的所有属性和关联?

我一直在寻找一种方法来获取ActiveRecord模型上所有模型属性和关联的数组。我很难找到这个问题的答案,所以,我会发布我的答案,看看是否有更好的解决方案。 最佳答案 获取所有属性m=Model.newm.attributes获取所有模型关联Model.reflect_on_all_associations.map{|x|x.class_name}.compact这些链接将提供更多详细信息HowdoyoudiscovermodelattributesinRailshttp://www.funonrails.com/2009/11/