0
を動作しません。そのプレイリストから1つの結果(ビデオ)しか得られませんが、3つの結果(ビデオ)を取得する必要があります。のSymfonyとDoctrine選択クエリは、私はMを持って適切に
私のクエリは次のとおりです。
$q_videos = Doctrine_Query::create()
->select('V.*, PHV.*')
->distinct(FALSE)
->from('Video V')
->leftJoin('V.VideoSource VS')
->leftJoin('V.PlaylistHasVideo PHV')
->orderBy("PHV.position ASC")
->where('PHV.playlist_id = ? AND V.instance_id = ? AND VS.transcoded = ?', array($this->getObject()->getId(), sfContext::getInstance()->getUser()->getAttribute('instance_id'), 1));
私は、ログおよびそのOKでクエリをチェック:phpMyAdminの中でこのクエリを実行すると
SELECT v.id AS v__id, v.published AS v__published, v.share AS v__share, v.public AS v__public, v.title AS v__title, v.description AS v__description, v.thumbnail AS v__thumbnail, v.subtitle AS v__subtitle, v.created_at AS v__created_at, v.updated_at AS v__updated_at, v.views AS v__views, v.highlighted AS v__highlighted, v.created_by AS v__created_by, v.updated_by AS v__updated_by, v.instance_id AS v__instance_id, p.id AS p__id, p.playlist_id AS p__playlist_id, p.video_id AS p__video_id, p.position AS p__position FROM video v LEFT JOIN video_source v2 ON v.id = v2.video_id LEFT JOIN playlist_has_video p ON v.id = p.video_id WHERE (p.playlist_id = '1' AND v.instance_id = '1' AND v2.transcoded = '1') ORDER BY p.position ASC
それは私に良い結果を返す - 3つの結果(動画)
Doctrineバージョン:1.2.3 Symfonyバージョン:1.4.8
誰も私を助けることができますか?
私は( 'PlaylistHasVideo PHV')から設定したときにその動作をしますが、その後はVideoオブジェクトではなくPlaylistHasVideoオブジェクトを返します。私はビデオオブジェクトが必要です... – trkich
これはDoctrineオブジェクトの水和でいくつかの "問題"だと思います... Doctrine :: HYDRATE_ARRAYを実行すると、良い結果が得られます。 – trkich