如果我没有在模型(帐户)中设置 default_scope,而只是调用 Account.first,将返回哪个项目?
这是一个例子:Account 表有 5 条记录,Account.all 返回:
Account.all.map{ |x| {id: x.id, name: x.name, created_at: x.created_at, updated_at:x.updated_at}}
Account Load (0.5ms) SELECT "accounts".* FROM "accounts"
=> [{:id=>2,
:name=>"Hessel, Kirlin and Gulgowski",
:created_at=>Wed, 04 Sep 2013 00:44:33 EDT -04:00,
:updated_at=>Wed, 04 Sep 2013 00:44:33 EDT -04:00},
{:id=>3,
:name=>"Hessel, Kirlin and Gulgowski",
:created_at=>Wed, 04 Sep 2013 00:44:34 EDT -04:00,
:updated_at=>Wed, 04 Sep 2013 00:44:34 EDT -04:00},
{:id=>4,
:name=>"Hessel, Kirlin and Gulgowski",
:created_at=>Wed, 04 Sep 2013 00:44:34 EDT -04:00,
:updated_at=>Wed, 04 Sep 2013 00:44:34 EDT -04:00},
{:id=>5,
:name=>"Hessel, Kirlin and Gulgowski",
:created_at=>Wed, 04 Sep 2013 00:44:35 EDT -04:00,
:updated_at=>Wed, 04 Sep 2013 00:44:35 EDT -04:00},
{:id=>1,
:name=>"EIS",
:created_at=>Wed, 04 Sep 2013 00:44:31 EDT -04:00,
:updated_at=>Wed, 04 Sep 2013 00:44:32 EDT -04:00}]
Account.first 返回 id 为 2 的记录,我没有在模型中设置 default_scope,为什么 id 为 2 而不是 id 为 1?
谢谢 !
更新:我喜欢这个答案(https://stackoverflow.com/a/4986620/655621)