1

Doctrineは、望まないのに、すべてのクエリで主キーを返すことに少し腹を立てています。とにかくこれを止めることはありますか?coz私は、教義のクエリ結果と一緒にこれらの気の利いた主キーを本当に望んでいません。

たとえば、私が持っているクエリは次のとおりです。

$getAllDatesForUserQuery = $this->createQuery('s')
    ->select('s.datename')
    ->where('s.userid = ?',3)
    ->setHydrationMode(Doctrine::HYDRATE_ARRAY) ;

この状況では、必要に応じてすべての日付名を取得しますが、主キー列の値も正常に返します。私はそれを望んでいません。

私ですか?それとも教義ですか?

4

1 に答える 1

3

単純な配列が必要で、単一のフィールドのみが選択されているこのような場合、答えはSingle Scalar Hydrationモードです。次のように使用します。

$q = $this->createQuery('s')
->select('s.datename')
->where('s.userid = ?',3)
->setHydrationMode(Doctrine::HYDRATE_SINGLE_SCALAR);

クエリは、必要な値のみを含む単純な1次元配列を返すことがわかります。

于 2012-11-19T19:06:58.583 に答える