カテゴリー
コンピューター

CakePHP2 でのバージョン確認方法をメモしておきます!

時々、自分がどのバージョンの CakePHP で作業しているのかわからなくなるので確認方法をメモします。

  • lib/Cake/VERSION.txt の最後の行を見よ!
カテゴリー
コンピューター

CakePHP2 すべてのバリデーションをメモしておきます!

モデルを bake するときにバリデーションをつけることができます。最低限の設定が書かれているほか、オプションもコメントとして作成されるので、何かと便利です。

ただ、データベースにテーブルを作るほどでもないけれど、ちょっとお気楽にモデルを試験的に作成して、バリデーションをお手軽に設定して、、、というときに bake をわざわざするのは面倒です。

そこで、bake で出力されるバリデーションの全パターンを書いておくことで、お気軽にコピペできるようにしておきます♪

カテゴリー
コンピューター

fon の MyPlace に PC から突然接続できなくなった問題を解決しました!

無線LANのルータ、fon フォンの MyPlace に昨日まで接続できたのに、できなくなってしまいました。なぜでしょう。。。とにかく、再び接続できるようになんとかしましたので、そのメモを残します。

行った手順

  1. ウィンドウ右下、日時表示のちょっと左側の「インターネットアクセス」をクリック。
    「ネットワークと共有センターを開く」をクリック。
  2. 左側の「ワイヤレスネットワークの管理」をクリック。
  3. 「MyPlace」をダブルクリックして、「MyPlace ワイヤレスネットワークのプロパティ」を表示
  4. 「セキュリティ」のタブをクリック
  5. 「セキュリティの種類」を「WPA2 – パーソナル」から「WPA – パーソナル」に変更。
    「暗号化の種類」は「AES」のまま。
    「ネットワークセキュリティキー」は fon 本体の裏面にある WPA-Key を入力。
  6. 「OK」をクリック。
  7. ウィンドウ右下、日時表示のちょっと左側の「インターネットアクセス」をクリック。
    「MyPlace」の「接続」をクリック。

おわりに

暗証番号には WPA-Key を使います。シリアルナンバーではありません。

また、試行錯誤でアタリをつけて自力で直しましたが、公式で「いったん設定を削除してから再び接続設定を作成してくださいませね。」と明快な方法が記されておりますので、次回からはそのようにしたいと思います。

カテゴリー
コンピューター

CakePHP2 でログインページをたくさん作る方法を考えました!

◆2012年10月17日、追記。◆

CakePHP2 でログインページをたくさん作る方法再び♪ | oki2a24 にてまったく違う考え方でログインページをたくさん作る方法をメモしました。

この投稿が参考になった!!!とコメントを残してくだすった方がいらっしゃいましたので、ほかにもお求めの方がいらっしゃいましたら併せて閲覧いただき、何かの参考になればうれしく存じます。

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

ウェブサービスを作っていると、たとえば先生用のログインページはログインフォームだけでよいけれど、生徒用のログインページでは「新規登録はこちら!」のリンクも付けたい、、、ということがあると思います

ただし、ログイン処理はすべて同じとしたいのです。

しばらく悩んだのですが、prefix ルーティングで実現できそうです。

ポイント

  • appConfig/core.php の Routing.prefixes を修正して設定します。
    例:array(‘admins’, ‘editors’, ‘authors’)
  • コントローラーのアクション名で prefix ルーティングを使用することを知らせます。
    書き方は、ルーティング名 + アンダースコア + アクション名
    例:admins_login、editors_login、authors_login
  • ビューは、prefix ルーティング用に作成したアクションに対応するように作成します。
    例:admins_login.ctp、editors_login.ctp、authors_login.ctp
カテゴリー
コンピューター

ポイント3つ!phpDocumentor を Pleiades All in One 日本語ディストリビューションで使うための設定!!!

Pleiades All in One 日本語ディストリビューションで phpDocumentor を使うためのポイント3つ。

  • コマンドプロンプトを管理者特権で実行します(Windows7)。
  • phpDocumentor を一度アンインストールしてから再度インストールします。
  • php.ini の読み込むライブラリ(Dynamic Extensions)に php_xsl.dll を追加します。
カテゴリー
コンピューター

CakePHP2 認証、Auth コンポーネントのサンプルを世界一シンプルを目指して作ります。

2014年10月11日追記

再び勉強してみましたの♪今度は bake を使用してもっと楽にサンプルを作成することができましたわ♪

★認証のお勉強内容

ログインしないとページにアクセスできないようにする、認証機能を勉強します。同時に、認証が不要なページを設ける方法も確かめます。できるだけシンプルな構造でいきます!

では、次のような認証前後でアクセスできるできないページ、を作成してみます。ログイン用のユーザは、1人だけ作ります。

URL はこんな感じです。

  • ログインページ
    • http://localhost/cakesample3/users/login
  • ログイン前後でアクセスできたりできなくなったりするページ
    • http://localhost/cakesample3/apples
    • http://localhost/cakesample3/beets
    • http://localhost/cakesample3/cherries

今回のサンプルを動かすと、ログイン前後でどのページにアクセスできて、どのページにアクセスできないのかをまとめた表です。

ページ ログイン前にアクセスできる ログイン後にアクセスできる
apples ×
beets ×
cherries
カテゴリー
コンピューター

CakePHP2 で Model::saveAssociated を使って1回で複数のテーブルにデータを保存します♪

CakePHP2 を勉強してきて、1つのテーブルにデータを入れるには Model::save を使えばよいし、やってみた記録を残してくださっている方々のページも見つかって心強いのです。

けれどもじゃあ、表示したページのフォームにいろいろデータを入力して、登録!とかクリックしまして処理を走らせたときに、2つのテーブルに1度に綺麗にスマートにデータベースに Insert する方法は、意外と見つかりません。

ですので、やってみました。記録を残します。

ポイント

  • アソシエーション設定済みの複数モデルのテーブルに1度にデータを保存するには、Model::saveAssociated を使う。
  • ちなみに、Model::saveMany はひとつのモデルに複数行を登録するときに使う、らしい(未検証)。
  • ちなみに、Model::saveAll は Model::saveMany または、Model::saveAssociated が実行される。慣れないうちは明確に saveMany、saveAssociated を使い分けたほうが無難かも。
カテゴリー
コンピューター

CakePHP2 を Eclipse で開発するまでのセットアップ手順をメモします♪

今更なのですが、わたくしが Eclipse (使っているのは Pleiades All in One 日本語ディストリビューション)で CakePHP の調べ物をしたりするときに、お手軽にセットアップしている方法をメモしておきます。

カテゴリー
コンピューター

Eclipse で CakePHP2 のビューの .ctp ファイルを扱うときのちょっとしたコツメモ

設定 20120725 230642.jpg

ビューファイル(*.ctp)を PHP ファイルと同等に開くための Eclipse 設定方法

  1. ウィンドウ(W) > 設定(P)
  2. 一般 > コンテンツ・タイプ
  3. テキスト > PHP コンテンツ・タイプ
  4. 追加
  5. 「*.ctp」 > コンテンツ・タイプの関連付けを追加のOK
  6. 設定のOK
カテゴリー
Microsoft

コマンドプロンプトで一時的にパス path を通します。

普段だったら、コンピューターのプロパティからシステムのプロパティを表示し、環境変数のシステム環境変数の path から設定する「パス」をコマンドプロンプトから設定します。

なお、今回の設定はコマンドプロンプトを閉じると無効になります

コマンドプロンプトで一時的にパスを通す方法

  • 現在のパスの確認方法 path
  • パスを通す方法 set path=%path%;C:\pleiades\xampp\php
    「;」が必要かどうか、事前に現在のパスを確認すること