PHP

アソシエーションさせた他モデルのフィールドを指定してデータ取得する方法がわからない

アソシエーションさせた他モデルのフィールドを指定してデータ取得したいけど、方法がわからなくて悩んでいるというお話です。 テーブル構成の例 以下のようなテーブル構成になっていて、それぞれアソシエーションさせてあります。 Entry id title body cate…

コントローラの index() に引数をつけるとメソッド扱いされてしまう件

久々に CakePHP をいじりを再開してみたら、コントローラの index() に引数をつけるとメソッド扱いされてしまう件にぶち当たりました。 手抜きをして以前のものを使うと、以下のような URL にアクセスするとエラーになります。 http://lab.theworld.jp/cakep…

『XHTML&CSSデザイン |基本原則、これだけ。』と『プログラミングPHP 第2版』を購入

お世話になっているデザイナーのこもりまさあき(cipher)さんが新しい著書『XHTML&CSSデザイン |基本原則、これだけ。』を出されたとのことなのでアマゾンのカートにぶち込みました。 ついでに、『プログラミングPHP 第2版』も投入。 まずは『XHTML&CSSデザイ…

『CakePHP』で読んだ本メモを作る 〜3〜 Amazon Web Serviceを利用して登録する本の候補リストを取得する

登録する本のデータを取得するまでの処理。 登録までの流れ 検索フォームから本のタイトルや著者名を検索し、出てきたリストから選択してそれを登録するという方式。 早い話がはてなの「はまぞう」みたいなカンジ。 はてな認証を通った後の、ログイン後メニ…

『CakePHP』で読んだ本メモを作る 〜2〜 全画面共通のログイン情報項目を作る

はてな認証でログインした後、全画面でそのログイン情報が表示されるようにしてみる。layoutとかrenderをアレコレするんだっけ、と思いながら調べていたら、ちょうどよさそうな書き込みやエントリがあったのでを参考にさせていただきました。 CakePHPでサイ…

『CakePHP』で読んだ本メモを作る 〜1〜 はてな認証を使う

『CakePHP』の基本的な部分はなんとなく理解してきたので、慣れていくために簡単なものを作ってみることに。 読んだ本を記録していくWebアプリを作る。 本のデータは Amazon APIから取得 認証は『はてな認証』を使ってみる はてな認証apiの設定 まずは、はて…

『CakePHP』を使ってみる 〜13〜 Cache を使う

今回は RSSHelper について試したことを書こうかと思ったけど あまり思い通りの結果にならなくなってしまったので諦めて Cache についてメモ。RSSHelper について良さそうな感じでまとまっていたのは以下です。 Mental Ramblings Gets Fed ブログのエントリ…

CakePHP』を使ってみる 〜12〜 Cookieの使い方確認

『CakePHP』1.2でのクッキーの使い方確認。 Cookie のリファレンスを読んでみたらほとんど Session と同じだったので、ちょっと書き換えて試してみた。 CookieComponent Class Reference クッキーに書き込み Session で書いたコードをちょっと書き換えてみる…

『CakePHP』を使ってみる 〜11〜 セッションの使い方確認

『CakePHP』1.2でのセッションの使い方確認。 セッションについては 1.1 から変わった部分はないみい。 SessionComponent Class Reference とりあえず、コントローラにいろいろ書いて確認してみた。 設定 セッションデータの保存場所 設定でセッションデータ…

『CakePHP』を使ってみる 〜10〜 タグ機能を作ってみる

タグ機能を作ってみることに。 テーブルを作る ドキュメントの『6.4.5. hasAndBelongsToMany の定義と問い合わせ』あたりがちょうど似たような話なので、テーブル構成を参考に。 http://cakephp.jp/doc/ch06s04.html#id4803164 CREATE TABLE `tuto_tags` ( `…

『CakePHP』を使ってみる 〜9〜 『Cake ブログチュートリアル』を元に簡単なブログを作る

前回の続き。『Cake ブログチュートリアル』で作った Blog にコメント機能をつけてみる。 フォームのアクションで悩む 一般的なブログのように、エントリを 1件表示して、本文の下あたりにコメントがあったら一覧を表示。その下にコメントフォームという構成…

『CakePHP』を使ってみる 〜8〜 『Cake ブログチュートリアル』を元に簡単なブログを作る

リファレンスの付録『Cake ブログチュートリアル』をデータ元に簡単なブログを作ってみることに。リファレンスでブログへの簡易エントリ投稿ができるようになったので、とりあえずこれを表示させてみる。 データベースからのデータ取りだし関連の復習。 ブロ…

『CakePHP』を使ってみる 〜7〜 CakePHP 1.2 でプルダウン、チェックボックス、ラジオで作る

CakePHP 1.2 で何か簡単なものを作ろうと思ったけど、その前にプルダウン、チェックボックス、ラジオの作り方を確認。 プルダウン用の配列を取得 モデルにプルダウン用の配列を作ってくれるメソッドが generateList が用意されているそうなので、それを使う…

『CakePHP』を使ってみる 〜6〜 1.2で delete が動かなかった

リファレンスの付録である『Cake ブログチュートリアル』を試していて、データベースから削除するという項目をやっていたら『Not unique table/alias:』とエラーになってしまった。Example A.10. /app/controllers/posts_controller.php function delete($id…

『CakePHP』を使ってみる 〜5〜 バージョン 1.2 ベータを導入

リファレンスの付録である『Cake ブログチュートリアル』をやってみることに。バージョン 1.2 ベータを導入現在の Stable のバージョンは 1.1.19.6305。 1.2ベータの方は 1.2.0.6311。『Ethna』を使い始めた時は、安定版の 2.1 系を選んでいたら2.3系が正式…

『CakePHP』を使ってみる 〜4〜 パラメーター

『Fast CakePHP』のサンプルをいじっていた時に気になったこと。コントローラに作った edit というファンクションが以下のようなカンジの記述になっていた。 function edit($id) { $news = $this->Task->findById($id); // その他の処理 }||< この $id はど…

『CakePHP』を使ってみる 〜3〜 『Fast CakePHP』のサンプルを動かす

さくらインターネットに『CakePHP』を導入できたので、次に『Fast CakePHP』のサンプルを動かしてみる。お題はタスク管理ツールの作成。 こういう本だと昔は、掲示板を作ろう、みたいなサンプルが多かったけどいまはこういうカンジなんだなあ。とりあえず、…

『CakePHP』を使ってみる 〜2〜 『CakePHP』をさくらインターネットに導入

『Fast CakePHP』で紹介されているサンプルをさくらインターネットに導入してみることに。『さくらインターネット』のプレミアムプランをマルチドメインで使用している。 『CakePHP』をインストール 導入する場所は以下のようにしてみた。a /home/theworld/w…

『CakePHP』を使ってみる 〜1〜 『Fast CakePHP』を読む

PHP のフレームワーク『CakePHP』を使ってみることに。前からやろうと思っていたけどなかなかやらないので、一ヶ月くらい前に秋田真宏さんが書かれた『Fast CakePHP』という解説書を購入してみた。 追い込むつもりで買ったけど、ブログ作ったり体調不良でダ…