1

私は CakePHP で json Rest API の構築に取り組んでいます。応答に適切な構造を取得できないように見えることを除いて、それはうまく機能します。

ユーザーとプロファイルの 2 つのテーブルがあります。ユーザーには One プロファイルがあります。プロファイルには外部キーがあります。モデル: Users.php (public $hasOne = 'Profile' を使用)、Profiles.php コントローラー: UsersController.php

応答は次のとおりです。

[2] => Array
    (
        [User] => Array
            (
                [id] => 3
                [firstname] => test
                [lastname] => 
                [email] => 
                [password] => 
                [created] => 2012-09-04 16:44:04
                [modified] => 2012-09-04 16:44:04
            )

        [Profile] => Array
            (
                [id] => 
                [skill] => 
                [user_id] => 
            )

    )

私は本当に応答が次のようになりたいです:

[2] => Array
    (
        [User] => Array
            (
                [id] => 3
                [firstname] => test
                [lastname] => 
                [email] =>
                [Profile] => Array
                      (
                     [id] => 
                     [skill] => 
                     [user_id] => 
                       )
            )


    )

join()、bind()、containable を調べました...ネストされたテーブルの解決策が見つからないようです。プロファイルをユーザー内にネストするためのアイデアはありますか?

4

1 に答える 1

1

データを管理するために使用する構造ではないため、Cakephp はそれを行いません。手動で行う必要があります。単一の結果で作業している場合 ( によって与えられるfind('first'))、次のようなことを試してください (私はテストしていません):

$result = $this->User->find('first', array('conditions' => array('User.id' => 1)));
Set::insert($result, 'User.Profile', $result['Profile']);
uset($result['Profile']);
于 2012-09-07T23:21:03.843 に答える