4

Doctrine 2 と Closure Table Strategy の Tree - Nestedset 動作拡張を使用しています。私の Web では、ユーザーはフォルダーとサブフォルダーを作成して表示できます。Closure Table 戦略を使用してこれを実装し、childrenHierarchy()メソッドでフォルダーをレンダリングします。

       $directoryTree = $repository->childrenHierarchy(
            null,  
            true,  
            array(
        'decorate' => false,
        'childSort' => array('field' => 'directory_name', 'dir' => 'asc')
    ));

正常に動作しますが、すべてのユーザーのすべてのフォルダーを返します。この場合、 user_idを定義して、ログイン ユーザーに属するフォルダーのみをレンダリングする方法がわかりません。これを行う方法はありますか?

私はあなたの答えを嬉しく思います。

4

1 に答える 1

3

ドキュメントから:

childrenHierarchy: この便利なメソッドを使用すると、ツリーの階層を表すノードの配列を作成できます。引数: node: ノードを渡すと、メソッドはその子を返します。デフォルトは「null」です (これは、すべてのノードを返すことを意味します)

次のようになります。

// example, 
$loggedInUserFolder = SOME_METHOD_RETURNS_USER_FOLDER($this->getUser());
$directoryTree = $repository->childrenHierarchy(
            $loggedInUserFolder,  
            true,  
            array(
        'decorate' => false,
        'childSort' => array('field' => 'directory_name', 'dir' => 'asc')
    ));
于 2015-05-01T04:41:07.293 に答える