メモ

セッション設定をコントローラ側で変更

独自のセッション設定を使う場合core.phpで指定しますが、これをコントローラ側で上書きするタイミングは、__construct()が基本。参考 http://d.hatena.ne.jp/hetima/20070201/1170313526 2010/02/09 13/30頃 追記 セッションをDBあるいはキャッシュ(memcach…

入力値がある場合のみvalidate

バリデーションの基本設定でつまづいた事。保存する項目に「URL」があるからurlのvalidationルールを指定したら、 設定しない場合に空送信してもエラーになる。。 notEmptyルールがわざわざあるから、これを指定しなければEmptyOKなのかなあって思ってたんで…

$html->linkでmailtoも作れる

$html->linkは、mailto:でもリンクが作れる。 第二引数に、Stringでmailto:〜 と指定するだけ。 echo $html->link("メール", "mailto:".$user['User']['mail']);↓ <a href="mailto:cake@example.com">メール</a> mailto以外がどうなるかは未検証。。

controller/action指定するとInternal Server Errorになる場合の.htaccess設定

開発の関係でちょっと特殊な環境にCakePHP構築したところ、 http://cakephp-root/ にアクセスした時は問題なかったのですが、 http://cakephp-root/controller/action にアクセスすると、Internal Server Errorになりました。 これを、 app/webroot/.htacces…

emptyファイルは何故必要か

解は 「gitなどでは、ファイルが存在しないフォルダは、バージョン管理対象外になるからでは」 だ、そうです。 id:cakephperさん、ありがとうございました!

好デザインのためのあれこれ

デザインは(も)正直苦手です ^^; jQueryあるいはCSSでデザイン参考にしたいサイトのメモ http://miracle-ysdesign.com/blog/javascript/358.html#more-358 http://miracle-ysdesign.com/blog/javascript/483.html#more-483 http://miracle-ysdesign.com/blog…

ホームページのバリアフリー化

高齢者向けコンテンツについて調査中・・・・ 「みずらい」「見やすい」は、自分で感じてない気づかない面も多いので難しいところ。 宮崎県の資料がとてもわかりやすくまとまっていました。 チェック項目/宮崎県ホームページバリアフリー化のための手引書 あ…

Formヘルパーで出力したタグに備考を記載する

Formヘルパーのinputメソッドを使うと、labelで括られた項目名と、入力フォームが自動的に出力されますが、 そこに「 * 必須」とか「6文字以上12文字以下」のように付記を入れる方法。 $options[‘before’], $options[‘between’], $options[‘after’]のいずれ…

モデル追加した場合のACL設定追加方法

コントローラー単位でACLを設定している場合で、モデル(コントローラ)を新たに追加した際にはACLの設定追加が必要なので、その方法のメモ。コントローラー単位でACLを設定の実装方法はこちら。

bakeで関連モデルの設定名が途切れる事がある

3文節位の長いテーブル名からbakeでモデルを生成すると、関連の生成時にクラス名が途切れました。原因など不明ですが、ひとまず現象メモ*1。 *1:CakePHPのバージョンは1.2.5

Croogo触ってみた

candycane関連で、インストーラをCroogoというモノからport(インポート?)してきた、という記載を見つけたので本家のCroogoをちょっと使ってみました。出展 http://my.candycane.jp/news/show/16 Croogo Google Code Archive - Long-term storage for Google…

PRIMARYキーの定義

PRIMARY KEY は、全てのキー カラムが NOT NULL として定義されなければいけないユニーク インデックスです。もしそれらが NOT NULL として明示的に宣言されなければ、MySQL はそれらを暗示的に(そして静かに)宣言します。1つのテーブルは1つの PRIMARY KEY …

関西アンカンファレンスに参加してきました

土曜日に関西アンカンファレンス参加してきました。 15分という単位でのセッションが、テンポが良くてあっという間でした。全セッションリストはこちら まとめたスタッフさん、お疲れ様です m(_ _)m 以下、自分の印象に残ったものなど。中でも、特に注意しよ…

MySQL5.1のスロークエリ設定中。

CakePHPのSQL負荷が気になったので、開発サーバにスロークエリ入れてみました。 私が個人でしょぼしょぼ動かしてるだけのサーバ設定しても検出できるのか?という疑問が今まであったのですが、MySQL5.1にすると、マイクロ秒単位、0秒単位にすれば全クエリの…

ACL関連SQLの一部にINDEXがつけられない

ACLを導入すると、アクセスのたびにACL関連テーブルにアクセスが発生するので、INDEX入れた方が良い箇所とかないかな?と思いSQL眺めてみましたが、一部の高負荷SQLが、根本的にINDEXの効かない作りになっています。 SQL自体を変更すればINDEXが使えるように…

requireAuthを使う際の注意

Securityコンポーネントを使ってCSRF対策を入れて見ていたのですが、requireAuthのチェック機構が予想以上に高機能でした。 ただ、高機能な分、使い方に注意しないとエラーにも・・・

htmlヘルパーlinkはリンク文字列をHTMLエンティティ化する

想定外。Sanitize::html()でエンティティ化した文言を、$html->linkでリンクすると、リンク文字列がアンエスケープされず、エンティティのまま表示されました。 正(ホームで名前表示@文言リンクなし) <i>italic</i>(+-"1") 誤(一覧で名前表示@文言リンクあり) &l…

独自Behaiviorの作り方要点

ビヘイビアの作り方。基本は以下を参照ですが、地味にハマったところ。 http://www.garacter.com/notes/CakePHP+Note:%E3%83%93%E3%83%98%E3%82%A4%E3%83%93%E3%82%A2/pi:187

CakePHPでスキン型アプリを作るには

「できるのかなあ」とtwitterで呟いてみたら、cakephperさんからヒントいただきました。。ありがとうございます! 要になるのは、テーマ機能*1。 あと、セッション機能とキャッシュ辺りが絡み合ってきそうです。特にキャッシュは懸念・・・ *1:手持ちの入門…

Sanitizeの中身

Sanitizeのソースを読んで気付いた、マニュアルには載ってない、あるいは分かりずらいポイントなど*1。 *1:ver.1.2.5

”継承”のヒント

Javascriptでも”オブジェクト化”意識で悩み中。 特に”継承”。 ”何かキーになりそうな”URL、メモ。(12/10 URL追加)

ACLによるcontroller/action以外の権限設定

CakePHPの ACL機能を使って、model(controller)/action以外にアクセス制限をかける方法の検討。 ちょっと変則ですが、可能そうです。

外部リポジトリのバージョンアップの反映手順

例えば、「一部に自前の改修を入れたWordPressに、本家WordPressのバージョンアップを反映する場合」 svnを使って、自前の改修部分を損なうことなく、バージョンアップ差分を反映する方法の手順メモ 注 この方法は、以前の仕事上での経験をベースにしていま…

gitをちょっと触ってみた

CentOSにgitインストール後、一般ユーザに戻ってgitざっと触ってみたメモ。Git入門 - アットウィキのチュートリアルとマニュアルを参考に。 派生して、Gitだけじゃなく「バージョン管理」について良い本があるそうなので、それも見てみようかと思います。入…

ACL:ファイル側 $this->Auth->authorize の設定は?

ACL入れようとしてますが、最後の(?)詰め、Controller側の設定でハマってます・・・検討&調査中のメモ。(追記:解消しました。 解は「action」あるいは「crud」です)

postConditions

ACLの詰めではまりつつ。。 cakephperさんのつぶやき情報より。POST内容をfindの条件に変換するメソッド http://book.cakephp.org/ja/view/432/postConditions例示によると、検索画面向け。 他に用法ないかな・・・?

jQueryのAjaxファイルアップロードプラグイン

http://valums.com/ajax-upload/以外で。 シンプルにAjaxファイルアップロードできるjQueryプラグイン - テクメモ デフォルトが参照=uploadですが、デモでsubmitボタンを押させる例を挙げておられます。 これが欲しかった T-T また、シンプルなだけに内容が…

独自アクションのマッピング

時間切れ近いので現状をメモ。解決してません。 (追記:ソースコード記載の記法まちがってたため、画面に表示されてませんでした。訂正) (追記その2:解消してみたら、以下の推測間違ってました・・・解消編)

$thisに入ってるもの

昨日書いた、携帯とPCの共通処理はまだ共通メソッド作る程度ですね。。コンポーネントは、別々のコントローラ間で共有するものですから・・・・ それはともかく、$this->***で何が取れるかのヒント。 http://book.cakephp.org/ja/view/51/Controller-Attribu…

PC/mobile画面の処理共通化

携帯側をmobile_XXXX などのようなアクション名で作った場合、PC側の処理を self::XXXX()で引き継いで問題ない様子。 遷移が心配だったのですが、やってみたところ問題なし。 redirect(array('action'=>'index'))などで、PCならindex、携帯ならmobile_index…