×

Sign in with twitter.

You can follow the user and hashtags.

Share your tips on social media.

Post relative tips.

If you have relative tips, click [Add relative tips] to post.

YiiのActiveRecordでscopesを使わない人は人生の半分を損している

@tanakahisateru@tanakahisateru 2084 viewer 51 embed viewer embed
コントローラでなんでもやっちゃうのは間違ったMVCですよね。はいこれ。

https://gist.github.com/2834833

というわけで処理に名前を付けてDBの事情はモデルに分離するよね。

https://gist.github.com/2834868

でもなんかこれ、トリッキーで汚いから後でやばくなりそうな臭いするよね。まあそれでも動くのがYiiのいいところなんだけど、毎回は辛いから、普段の作業ではやっぱもうひと声欲しいよね。

そんなわけで、rulesとかrelationsと同じ調子で、モデルにscopesを実装したら幸せになって将来の拡張も安心。

https://gist.github.com/2834901

しかもコントローラの既存実装とは完全に直交してるから、もしどうしてもダメってときはコントローラを変えずにまた前のトリッキーなやつに戻れるよ。
Add relative tips

Users who share this tip.

Comments