AuthComponentでセッション切れが発生する

CakePHPのアプリケーションでAuthコンポーネントを利用して認証システムを作っていると時々セッション切れになってログイン画面に誘導されることがある。
こづかいつけーる for WebではOpenIDによる認証システムを使っていることもあるのかなぜかしらセッション切れが多いと感じていたところ、スパイスラボのブログにて有益な情報を発見した。
Security.level が high のときに起きるいろいろなことということで事例が紹介がされており、なかでもリダイレクトが書き換えられるというところが気になった。実際、こづかいつけーる for Webでのcore.phpのSecurity.levelがhighになっていたところ、mediumにしたらセッション切れは起こらなくなった。
おそらくセッションの保持範囲が設定レベルに応じて変わってくるところがポイントになっていると考えられる。

複数の入力項目をチェックする

モデルに実装するバリデーションの例には、メールアドレスを2回入力して、一致しているかどうかを比較したりするような複数の入力項目をチェックする例が残念ながら記載されていない。
モデルの中で何とかやってみた例なので、クレバーな方法ではないかもしれないが、DBへデータを登録する前のチェックをコントローラーで実装しようとすると面倒なので、困っている方がいらっしゃれば参考にしていただきたいと思う。
var $validate = array(
 ’mailaddrss1′ => array(
  ’rule’ => array(‘checkAddrss’),
  ’message’ => ‘メールアドレス1とメールアドレス2の入力内容が異なります’,
 ),
);
//$dataはmailaddress1の内容がセットされる
function checkAddrss($data){
 $check_data= $this->data;
 return $data != $check_data[‘ModelName’][‘mailaddress2’];
}

退院後に必要なもの(チャイルドシート編)

チャイルドシートは1万円台のものから4,5万円するものまで様々だが、そんなに予算がないので、2万5千円をめどに考えてみた。
候補に挙がったのは、7歳まで利用できるプリムロングSと2012年から適用されるECE(ヨーロッパ統一規則適合品)に対応しているコッコロ、コッコロEGで悩んだ。プリムロングは、2003年に販売されたモデルで、国土交通省装置型式指定基準適合品になっているものの、新基準ではない点が気がかりだったが、コッコロは、軽量ながらも作りが簡単になっていて不安だという口コミもあり、最終的にはコストパフォーマンスに優れており、作りがしっかりしているというプリムロングSをAmazonから購入した。
  
プリムロングSは取り付けしにくいという口コミがあったが、実際取り付けてみると取扱説明書だけでも十分に取り付けができた。また、DVDが付いているのだが、こちらを見ると非常にわかりやすかったので、説明書だけでは分かりにくい人もDVDを見れば安心だと思った。
値段も安かったのは、型落ちで在庫整理品かと思ったら、製造日が2009/5/23、Amazonへの納品日が2009/6/1になっていたので、そうでもないらしい。Amazonでもランキング3位に入るだけあって、多くの人に支持されたロングセラーなんだろうと思う。

シリアルポート

・標準的なインターフェイスはRS-232Cである。
・1ビット単位でデータを転送する
・ブートローダーとLinuxカーネルでは、同じ速度を使用するように設定する必要がある。(異なる速度を設定するとカーネルパニックが発生し、再起動が必要)

debugレベルに応じてエラー表示が変わってしまう

app/config/core.phpの
Configure::write(‘debug’, N);
のN=0とN>0では、コントローラーもしくはアクションなどが存在しない場合に表示されるエラーメッセージが変わってしまう。
具体的には、N>0ならば、app/views/missing_controller.ctp、app/views/missing_action.ctpが呼ばれるのに対して、N=0ならば、app/views/error404.ctpが呼ばれる仕組みだ。
これは、cake/libs/error.phpの110行目あたりにある
if ($method !== ‘error’) {
 if (Configure::read() == 0) {
  $method = ‘error404’;
  if (isset($code) && $code == 500) {
   $method = ‘error500’;
  }
 }
}
によるものである。
debugレベルを0にしてリリースする場合には、意図したエラーメッセージが出るか確認したほうがよさそうだ。

退院後に必要なもの(授乳編)

産後平均7日間の入院でかかる費用は、約38万円と聞かされていたが、実際かかった費用は新生児の医療費を含めて約44万円だった。個室だったため、差額ベット代や休日加算などが含まれているのだと思う。
ところで、退院後にすぐに必要になったものについてまとめてみた。夫婦で休みを取れていればいいけれども、そうでなければ、入院前に買いそろえておく必要があると思う。
哺乳瓶
哺乳瓶はヌークというもので、ガラス製品のものが温度がよくわかってよいと思う。
240mlのものと120mlのものがあって、新生児には、120mlがいいかもしれない。家では、120mlを4本、240mlを2本そろえた。
 
哺乳瓶洗浄
ピジョンからミルクポンというタンクに溶かすだけでいいものが売っているので、ミルクポンとセットで使っている。(タンクは、240mlのガラス瓶が4本入る大きさ)
濃度をきちんと管理しないといけないけれど、計量する手間は面倒なので、便利。
 
洗浄する際に、母乳が残っているとすぐに汚れてしまうので、お湯で洗ってから入れるわけだけれども、それでも細かい汚れが付いてしまっているので、哺乳瓶のブラシを買っておきたい。なお、ガラス瓶用とプラスチック用の2つがあるので注意したい。

ディバイスファイル

/dev/hd[a-z][0-9]+ IDEハードディスク
/dev/sd[a-z][0-9]+ SCSIハードディスク(SATAも)
/dev/ttyS[0-9]+ シリアルポート(COM[1-9])
/dev/lp[0-9]+ LPTポート
/dev/fd[0-9]+ フロッピーディスク
ディバイスファイルは、スペシャルファイルキャラクタディバイス:バッファなしでデータを受け渡す)になっており、パーミッションを表示すると crw——- などとcがセットされている。

IRQ(Interrupt ReQuest)

IRQ:1 キーボード
IRQ:3(I/Oポートアドレス:02F8) シリアルポート(COM)2
IRQ:4 シリアルポート(COM)1
IRQ:5 パラレルポート(LPT)2、サウンドカード
IRQ:6 フロッピーディスク
IRQ:7 パラレルポート(LPT)1

環境変数エラー

Trac detected an internal error: The environment options “TRAC_ENV” or “TRAC_ENV_PARENT_DIR” or the mod_python options “TracEnv” or “TracEnvParentDir” are missing. Trac requires one of these options to locate the Trac environment(s).
というエラーが発生した。
原因は、TRAC_ENVがhttpd.confなどに設定されていないことによる。
<Location /xxx>
SetEnv TRAC_ENV “/trac_path
</Location>
などの記載を行う。

出生に関する手続

出生にあたり手続きをしなければならないものは、出生届、住民登録、児童手当申請の主に3つとなる。出生届は、里帰り出産している場合には、出産した病院の市町村に届け出はできるが、住民登録並びに児童手当申請は、住民登録している市町村でしかできないので、届け出忘れに注意したい。
出生届
生後14日以内に届け出をしなければならない。必要なのは、母子手帳、印鑑、出生届の3つだが、届出者の本人確認のための運転免許証を持っていくといいと思う。
住民登録
出生届をしたら住民登録が自動的に行われてもよさそうだが、これらは別々に行わなければならない。出生届が住民登録をしていない市町村で行われた場合、1週間以降に行う必要がある。
児童手当申請
生後15日以内に届け出をしなければ、手当を受給開始月が遅れてしまう。また、所得制限があるので、申請しても却下される場合がある。また、乳幼児医療費助成制度を設けている場合もあるので、確認をして併せて申請を行う。