Tag: 命名范围

你如何在Rails 3中使用ActiveRecord关联?

我有一个Rails 3项目。 随着Rails 3来到Arel和重用一个范围来build立另一个范围的能力。 我想知道是否有一种方法来定义关系时使用范围(例如“has_many”)。 我有logging有许可列。 我想build立一个default_scope,考虑到我的权限列,以便logging(即使是通过关系访问的)被过滤。 目前,在Rails 3中,default_scope(包括我发现的补丁)没有提供传递proc(我需要用于后期variables绑定)的可行方法。 有没有可能定义一个has_many命名的作用域可以传递给哪个? 重用命名作用域的想法如下所示: Orders.scope :my_orders, lambda{where(:user_id => User.current_user.id)} has_many :orders, :scope => Orders.my_orders 或者在关系中隐式编码该命名范围将如下所示: has_many :orders, :scope => lambda{where(:user_id => User.current_user.id)} 我只是试图通过后期绑定来应用default_scope。 我宁愿使用Arel方法(如果有的话),但会使用任何可行的选项。 由于我指的是当前用户,我不能依赖于在最后时刻未被评估的条件,比如: has_many :orders, :conditions => ["user_id = ?", User.current_user.id]

什么是在轨范围/ named_scope?

我最近开始实习。 我的雇主在rails上使用ruby,而且我经常遇到需要查看的新语法。 我已经search了一个关于named_scope的很好的解释,但是到目前为止我发现的大部分博客文章都是给予高度评价的,而不是直接的定义或者介绍。 在rails上ruby究竟是named_scope(现在简称为scope)呢?

你如何得到一个范围返回它的名字?

Dim sampleRange as Range Set sampleRange = Worksheet.Range(Cells(1,1),Cells(1,4) sampleRange.Name = "Range1" MsgBox sampleRange.Name 上面的代码将显示范围的实际地址,而不是名称。 为什么? 我如何得到一个命名的范围来返回它的名字?