cakephpのafterFind()ヘルプ
-
26-09-2019 - |
質問
私は配列で、このような検索結果を持っている。
Array
(
[0] => Array
(
[StatusMessage] => Array
(
[id] => 1
[pid] => 0
[message] => First Status Message
[item_id] => 1
[commenters_item_id] => 2
[created] => 2010-10-26 02:09:05
[modified] => 2010-10-26 02:09:09
)
[Item] => Array
(
[id] => 1
[module_id] => 1
[item_id] => 1
[User] => Array
(
[id] => 1
[first_name] => Harsha
[last_name] => Vantagudi
[username] => harshamv
[file] =>
)
)
[StatusMessageReply] => Array
(
[0] => Array
(
[id] => 2
[pid] => 1
[message] => Second Status Message
[item_id] => 1
[commenters_item_id] => 1
[created] => 2010-10-26 02:09:05
[modified] => 2010-10-26 02:09:09
[Item] => Array
(
[id] => 1
[module_id] => 1
[item_id] => 1
[User] => Array
(
[id] => 1
[first_name] => Harsha
[last_name] => Vantagudi
[username] => harshamv
[file] =>
)
)
)
)
)
)
私はそれが
配列内の特定のものを除去することによって、少しきれいに見えるようにそれを変更したいですArray
(
[0] => Array
(
[StatusMessage] => Array
(
[id] => 1
[pid] => 0
[message] => First Status Message
[item_id] => 1
[commenters_item_id] => 2
[created] => 2010-10-26 02:09:05
[modified] => 2010-10-26 02:09:09
)
[User] => Array
(
[id] => 1
[first_name] => Harsha
[last_name] => Vantagudi
[username] => harshamv
[file] =>
)
[StatusMessageReply] => Array
(
[0] => Array
(
[id] => 2
[pid] => 1
[message] => Second Status Message
[item_id] => 1
[commenters_item_id] => 1
[created] => 2010-10-26 02:09:05
[modified] => 2010-10-26 02:09:09
[User] => Array
(
[id] => 1
[first_name] => Harsha
[last_name] => Vantagudi
[username] => harshamv
[file] =>
)
)
)
)
)
Basciallyアイテム一部を除去し、レベルまでユーザを移動
解決
私は にないと思います。誰も見たり、あなたを除いてこれを気にするつもりはありません。そして、モデルデータの内部フォーマットを変更するには実際の利益はありません。逆に、それだけで問題を引き起こす可能性があります。一貫性のある内部のデータフォーマットをしてください!
かどうかを$statusMessage['Item']['User']
や$statusMessage['User']
を使用してユーザー情報にアクセスするには、実際に違いの多くを作成しません。あなたががそれを主張した場合、私はあなたが に参加することをお勧めしたいですクエリ内のusers
テーブルを経由してstatus_messages
テーブルに直接items
テーブル項目をフェッチする余分なステップを見送るために、そしてケーキは自動的に結果にあなたが望むようにフォーマットされます。
他のヒント
あなたがContainable
をご覧ください返され、関連するテーブルおよびまたはフィールドを制限したい場合。あなたが興味のないものの大きな山は、あなたが必要しないこと戻ってきたときに、あなたが望むものにそれを「含む」によって処理を少し緩和することができます。
しかしDecezeが言うように、を行うのない美学のために純粋にそれをトリミングします。
所属していません StackOverflow