(これを CFWheels Google グループに投稿してみました (2 回) が、何らかの理由でメッセージが表示されません。そのリストはモデレートされていますか?)
これが私の問題です。私は CF on Wheels でソーシャル ネットワーキング アプリに取り組んでいます。これは、Chris Peters の素晴らしいチュートリアルで私たちがよく知っているものとあまり似ていません。ただし、私の場合は、ユーザー ディレクトリにある最新のステータス メッセージを表示する必要があります。私は hasMany("statuses") を持つ User モデルと belongsTo("user") を持つ Status モデルを持っています。だからここに私が始めたコードがあります:
users = model("user").findAll(include="userprofile, statuses");
もちろん、これは statuses テーブル内のすべてのステータス メッセージに対して 1 つのレコードを返します。大量のオーバーキル。次に、次のことを試します。
users = model("user").findAll(include="userprofile, statuses", group="users.id");
近づいていますが、最新のステータスを選択したいときに、各ユーザーの最初のステータス レコード (最も低い status.id) を取得しています。ストレート SQL では、最初にサブクエリを使用してステータスを並べ替えると思いますが、Wheels ORM ではそれを利用できません。これを達成するための別のクリーンな方法はありますか、または巨大なクエリ結果をドラッグするか、ステータスを CFML にオブジェクト化し、ループ中にそれらを除外する必要がありますか?