小编And*_*rew的帖子

ActiveRecord:大小与计数

在Rails中,您可以找到使用Model.size和的记录数Model.count.如果您正在处理更复杂的查询,那么使用一种方法优于另一种方法是否有任何优势?他们有什么不同?

例如,我有用户的照片.如果我想显示一个用户表和他们有多少张照片,那么运行的实例user.photos.size会更快还是更慢user.photos.count

谢谢!

ruby ruby-on-rails ruby-on-rails-3 rails-activerecord

190
推荐指数
4
解决办法
10万
查看次数

Rails 3:获取随机记录

所以,我发现了几个在Rails 2中查找随机记录的例子 - 首选方法似乎是:

Thing.find :first, :offset => rand(Thing.count)
Run Code Online (Sandbox Code Playgroud)

作为一个新手,我不知道如何使用Rails 3中的新查找语法来构造它.

那么,找到随机记录的"Rails 3 Way"是什么?

ruby random activerecord ruby-on-rails ruby-on-rails-3

131
推荐指数
6
解决办法
7万
查看次数

ActiveRecord:从控制台列出表中的列

我知道您可以要求ActiveRecord使用以下命令在控制台中列出表:

ActiveRecord::Base.connection.tables
Run Code Online (Sandbox Code Playgroud)

是否有一个命令可以列出给定表中的列?

sql activerecord ruby-on-rails ruby-on-rails-3

105
推荐指数
5
解决办法
7万
查看次数

Ruby Metaprogramming:动态实例变量名称

假设我有以下哈希:

{ :foo => 'bar', :baz => 'qux' }
Run Code Online (Sandbox Code Playgroud)

如何动态设置键和值以成为对象中的实例变量...

class Example
  def initialize( hash )
    ... magic happens here...
  end
end
Run Code Online (Sandbox Code Playgroud)

...所以我最终在模型中得到以下内容......

@foo = 'bar'
@baz = 'qux'
Run Code Online (Sandbox Code Playgroud)

ruby metaprogramming instance-variables

90
推荐指数
4
解决办法
4万
查看次数

Rails找到关联的零has_many记录的记录

这似乎相当简单,但我不能让它出现在Google上.

如果我有:

class City < ActiveRecord::Base
  has_many :photos
end

class Photo < ActiveRecord::Base
  belongs_to :city
end
Run Code Online (Sandbox Code Playgroud)

我想找到所有没有照片的城市.我很乐意打电话给...

City.where( photos.empty? )
Run Code Online (Sandbox Code Playgroud)

......但那不存在.那么,你如何做这种查询?


更新: 现在找到原始问题的答案,我很好奇,你如何构建逆?

IE:如果我想创建这些作为范围:

scope :without_photos, includes(:photos).where( :photos => {:city_id=>nil} )
scope :with_photos, ???
Run Code Online (Sandbox Code Playgroud)

sql activerecord ruby-on-rails has-many

90
推荐指数
4
解决办法
3万
查看次数

将文件直接从一个S3帐户移动到另一个帐户?

非常基本的问题,但我一直无法找到答案.使用Transit我可以将文件从一个AWS账户上的一个S3存储桶"移动"到另一个AWS账户上的另一个S3存储桶,但实际上它是从第一个下载文件然后将它们上传到第二个.

有没有办法将文件直接从一个S3帐户移动到另一个S3帐户而无需在其间下载?

file amazon-s3 transfer amazon-web-services

87
推荐指数
4
解决办法
6万
查看次数

使用Git发布到S3?

有谁知道如何做到这一点?到目前为止,我还没有通过谷歌找到任何有用的东西.

我真的想设置一个本地仓库并用git push它将它发布到S3,这个想法是对资产进行本地版本控制,而在S3上进行远程存储.

可以这样做,如果是这样,怎么办?

git amazon-s3

82
推荐指数
4
解决办法
5万
查看次数

在Rails 3.1中添加新的资产路径

有谁知道如何在Rails 3.1中向资产管道添加另一个文件夹?

我想以app/assets/fonts同样的方式app/assets/images服务.


更新:5-7-2013

只是为将来发现此问题以明确添加资产路径的人添加一些说明,在application.rb文件中:

config.assets.paths << "#{Rails.root}/app/assets/fonts"
Run Code Online (Sandbox Code Playgroud)

但是,由于上面的路径app/assets不在你明确添加它,你只需要重新启动rails应用程序,这样Sprockets就可以把它拿起来.

你必须明确地添加是外面的路径app/assets,lib/assets或者vendor/assets,只是记得,虽然链轮拿起新的文件夹是存在,当你的应用程序中加载,在我的经验,它不拿起资产路径新的文件夹,而不重启.

ruby-on-rails path ruby-on-rails-3.1 asset-pipeline

78
推荐指数
3
解决办法
4万
查看次数

Rails:最后以空值排序

在我的Rails应用程序中,我遇到了几次问题,我想知道其他人如何解决:

我有一些值是可选的记录,所以有些记录有一个值,有些记录的值为null.

如果我在某些数据库上按该列排序,则首先对空值进行排序,在某些数据库上对空值进行排序.

例如,我有照片可能属于或可能不属于集合,即有一些照片在哪里collection_id=nil和一些在哪里collection_id=1等.

如果我Photo.order('collection_id desc)在SQLite上做的话我最后得到空值但是在PostgreSQL上我先得到空值.

是否有一个很好的标准Rails方法来处理这个并在任何数据库中获得一致的性能?

sorting null activerecord ruby-on-rails ruby-on-rails-3

77
推荐指数
9
解决办法
3万
查看次数

Rails + New Relic:RPM是什么意思?

我刚刚开始在我的rails应用程序中使用New Relic RPM,他们提供的一个指标是"吞吐量RPM".我到处搜索并彻底梳理了New Relic文档,我找不到RPM吞吐量指标的任何书面解释.

是"每分钟请求数"还是"每毫秒请求数"或其他什么?**内燃机和每分钟转数使得在Google中无法找到答案.

什么是吞吐量RPM?是一个更高或更低的数字,什么是一些平均基准,等?

我非常感谢这个指标的解释,谢谢!!

ruby-on-rails rpm ruby-on-rails-3 newrelic

67
推荐指数
2
解决办法
2万
查看次数