の同等の私は2つのテーブルがあります。Doctrine2サブクエリsymfony1怠惰なクエリゲッター
comment - id, application_id, comment, user_id, created_at, deleted_at
comment_likes - comment_id, user_id
私は標準DQLを使用してアプリケーションのコメントを取得することができますがSELECT u FROM Comment WHERE :application = application
コメントを通じてlopping、Iログインしたユーザーが既にコメントを好きであるかどうかを確認したいsymfony1で
、私は現時点では、単純な怠惰なクエリ$comment->hasUserLiked()
を使用しているだろう、Symfony2の中で、私はすべてのユーザーのクエリを実行する必要があるアプリケーションのコメントと、すべてのアプリケーションのコメントのクエリのために好き。
アプリケーションのコメントをループするときに、ユーザーがコメントコレクションを好きなレコードが好きであるかどうかを確認するために、各コメントでサブループを実行します。これはきれいではありません。
希望はこれが理にかなっています。
良い方法がありますか?
EDIT:サブコントローラを使用して、ユーザーがコメントを好きかどうかを表示することができますが、これはhtmlの2行分だけ上に表示されます。しかし、現在の実装よりもクリーンです。
ありがとうございます。私はこれがこれを行う最もクリーンな方法だと信じています。バウンティは報われました:) – Flukey