0

mysql データベースを使用する Rails アプリケーションがあります。

私は2つのモデルを持っています: [ foo,bar] foo has_many bar

$ rails c
foo.all
SELECT `foo`.* FROM `foo`
SELECT COUNT(*) FROM `foo` WHERE `foo`.`id` = 1
SELECT COUNT(*) FROM `foo` WHERE `foo`.`id` = 2
SELECT COUNT(*) FROM `foo` WHERE `foo`.`id` = 3
SELECT COUNT(*) FROM `foo` WHERE `foo`.`id` = 4
SELECT COUNT(*) FROM `foo` WHERE `foo`.`id` = 5
EXPLAIN SELECT COUNT(*) FROM `foo` WHERE `bar`.`id` = 1
EXPLAIN SELECT COUNT(*) FROM `foo` WHERE `bar`.`id` = 2
EXPLAIN SELECT COUNT(*) FROM `foo` WHERE `bar`.`id` = 3
EXPLAIN SELECT COUNT(*) FROM `foo` WHERE `bar`.`id` = 4
EXPLAIN SELECT COUNT(*) FROM `foo` WHERE `bar`.`id` = 5
=> [...]

私のアプリケーションでは、これらすべてのレコードを反復処理する必要があります。これらの余分な SQL ステートメントをすべて作成したくありません。最初の SQL ステートメントによって提供されるデータのみが必要です。

関連付けは存在しますが、私は ajax を使用して動的に残りのコンテンツであるため、ActiveRecord が望んでいるような「プリロード」を行う必要はありません。

4

0 に答える 0