SERVICE こんな事ができます

CNTACT ご相談はお気軽に

 ABOUT US こんな会社です



2009/07/28 by マッチー

updateAllでまとめてアップデート
単一のモデルにおいて、複数のレコードをまとめてアップデートしたいようなときには、updateAll()を使うといい。 構文的にはこんな感じ $this->Model->updateAll($fields, $conditons); $fieldsには更新したいフィールドの値を、$conditionsには更新したいレコードの値をそれぞれ配列で入れる。 たとえば、usersというテーブルにageとseijinという二つのフィールドがあるとする。どちらもint型で、ageに

続きを読む

2009/07/27 by マッチー

HABTMのデータ保存
ちょいちょいHABTMを使うわりに(まあ、まだ2回しか使ったことないけど)毎回やり方を忘れるのでメモ。 っていうか、初めてHABTMを使ったときはいろいろつまづいたので、データ保存に関する記事もきっと俺は書いているだろうと思っていたら、実は書いてなかったというね……ま、そういうこともあるさ。 一例として、複数の人にメルマガを配信する、それも常に全員に同じメールを配信するのではなく、たまには特定の人にだけ配信したいような画面を作っていて、誰にどのメールを配信したのかをDBで管理したいと思ったとき

続きを読む

2009/07/25 by マッチー

他のモデルをインポートする
たとえばUserとPostという二つのモデルがあり、それに対応したusersとpostsという二つのテーブルがあったとする。 ここで今、Postモデルでusersテーブルに入っているデータを取ってきたい、そんな衝動に駆られた場合には、App::importを使うといいっぽい。   <?php class Post extends AppModel {      var $name = 'Post';      function test() {           App::

続きを読む

2009/07/21 by マッチー

2つの月の差が欲しいとき
どれだけ使う機会があるかどうかは分からないけれど、今日たまたま、2つの月の差を出したいという状況に出くわしたので、ちょいとメモ。ブログの月別アーカイブなんかを作るときに使えるかもしれない。セレクトボックスで月を選択するとその月の記事の一覧に飛べる、みたいなね。 ここでは、ブログの記事が2009年1月から今日(2009年7月)まで存在すると仮定しよう。  $date = strtotime('2009-01-01'); $month1 = date('Y')*12 + date('m')

続きを読む

2009/07/18 by マッチー

コードがスパゲッティにならないために
基本的に、行いたい処理を順番に書いていけばプログラムは動くわけですが、しかし長くなればなるほど、きちんと整理して書いておかないと、後で見たときにどこでどんな処理を行っているのか分からなくなってくる。 僕もまだソースの書き方は下手で汚いので、ちょっと長いソースを書くとすぐにスパゲッチーになる。ぶっちゃけ、バグとか見つかって修正するときに、どの部分を修正していいのか分からない。というか、自分で書いておきながらソースを追うのがめんどい。見てるといらいらする。 そうならないためにはどうするか。 ま

続きを読む

2009/07/10 by マッチー

バリデーションルールの書き方
CakePHPにはデフォルトでいくつかのバリデーションルールがあるので、それを使えばメールアドレスの判定やら必須項目のところが空になっているかどうかの判定やらが簡単にできる。 特に正規表現だか何だかを使ってメールアドレスの判定をするのはかなり大変らしい。以前、どこかのサイト(どこだったかはちょっと忘れちった)でメールアドレスの判定のための正規表現が書かれているのを拝見させてもらったことがあるけれど、もんのすごい長くて正直見るのが嫌になった。あれはもうソースコードのレベルじゃねえよ。ページ全体が

続きを読む

2009/07/07 by マッチー

CakePHPでのSQL
CakePHPを使っていると、自分で直接SQL文を書く機会が少ない。っていうか、ほとんどない。 でもそれに慣れていると、たま~にどう書いたらいいのか分からなくなることがある。今回はそんな話。 DBにdateというカラム名でDATE型のデータが入っているとして、そこから今月のデータだけを取りたいような場合があるとする。 SQL文だとこんな感じになる。テーブル名はcalendars(仮)。 $month = date('m'); SELECT * FROM calendars WHER

続きを読む

2009/07/02 by マッチー

/の意味
今まであまり意識したことなかったんですけど、ホームページのアドレスって一番最後にスラッシュ『/』がついている場合とついていない場合があるじゃないですか。 http://astrodeo.com/blog http://astrodeo.com/blog/ 両者に違いなんてない、ていうか別に一番最後にスラッシュをつける意味なんてないんじゃないのとか思ってたんですけど、そんなことはなかったんですね。 末尾にスラッシュをつけるのは、それがディレクトリであるという認識になるみたいですね。

続きを読む

2009/07/01 by マッチー

Security.Saltの設定
新しいプロジェクトをやるたびについつい忘れちゃうので、次こそは忘れないぞという思いを込めてメモ。 プログラムができた~と思ってサーバー上でテストなどをしてみると、僕の場合、必ず最初にSecurity.Saltがどうたらこうたらというエラーが出てしまう。これはapp/config/の中にあるcore.phpというファイルを見ると分かるのですが、150行目くらいにこんなことが書いてある。 Configure::write('Security.salt', 'DYhG93b0qyJfIxfs2

続きを読む