Home > CakePHP関連 > 友達の日記一覧を作る(CakePHP修行 #42)

友達の日記一覧を作る(CakePHP修行 #42)

さてmixiの中の人が「これが一番重いんですよー」と昔言っていたような気がする「友達の日記一覧」を作ります。ちょっと悩んだ。UserとFriendが紐づいているからそこからPostまで見にいけるか、など試行錯誤しましたが、面倒になったので二段階で処理しました。

これって一段階で処理できるようなものなのかな?アソシエーションと$recursiveとか使えばひょっとしてできる?(>青い人)。

ではコード。

// friends' posts
$my_pals = array();
foreach ($this->Friend->findAll(array('Friend.user_id'=>$me['User']['id'],'Friend.status'=>1),'friend_user_id') as $pal) {
  $my_pals[] = $pal['Friend']['friend_user_id'];
}
$this->set('posts', $this->Post->findAll(aa("Post.user_id", $my_pals),null,'Post.created DESC'));

$my_palsにまずは友達のIDを突っ込み、そのIDに該当する日記を引っ張ってきています。ついでに作成日順に並べ替えてみました。

できあがったのはこちら。

home.gif

↑ 無事に友達の日記を引っ張ってこれました。数が多くなってきたときの処理作らなくちゃなー。

さて、こんなところですかね・・・次は何だろ。

友達の招待&承認系の処理か・・・これが鬼門。

※ CakePHP修業は百式管理人がSNSっぽいものをCakePHPで作ろうとして挫折するまでの日記です。前回までのあらすじはこちらへ。

@taguchiをフォロー!
Twitterもやっています!
Posted on August 2nd, 2007 and last modified on August 4th, 2009.

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://www.ideaxidea.com/archives/2007/08/cakephp_42.html/trackback
Listed below are links to weblogs that reference
友達の日記一覧を作る(CakePHP修行 #42) from IDEA*IDEA ~ 百式管理人のライフハックブログ

Home > CakePHP関連 > 友達の日記一覧を作る(CakePHP修行 #42)

最近の記事
カテゴリー別
過去記事一覧

Return to page top