ブログを移した為記事を削除しました。 新しいページへどうぞ
vim&CakePHPで開発する時に便利なプラグイン。 これを使えば、MVC間の移動の煩わしさから解放されます。 CakePHP用のvimプラグイン、『cake.vim』1.2をリリースしました。 - yuhei.kagaya CakePHP用のvimプラグイン、『cake.vim』を作ってみた。 - yuhei.kagaya cake.vimのダウンロードはコチラ。 http://www.vim.org/scripts/script.php?script_id=3589 例えば、vimでhoge_controller.phpを開いている時に views/hoge/index.ctpを編集したい!と思ったときに、通常だと :e ../views/hoge/index.ctp と、いった具合に開きたいファイル名までのパスを指定する必要があります。 そんなときcake.vimを使えば、 :Cv
cake.vimは、CakePHPのController、Model、Viewなどの移動を少し楽にするVimのプラグインです。 CakePHP1.3系、 2.0系の両方で動作します。 いろんな移動の方法があるのでcake.vimの操作を一通りまとめてみました。 インストール プラグインはvim onlineか、githubからダウンロードして解凍し、 cake/以下のファイルを.vim/配下にいれます。 cake.vim - Utility for CakePHP developers. : vim online violetyk/cake.vim · GitHub Vundleを使っている方は、 :BundleInstall violetyk/cake.vim でインストールできます。 設定 必須の設定はありません。 .vimrcにappディレクトリのパスを書いておくと、vimを起動して
CakePHP 2.0の新機能¶ モデル¶ モデルの初期化プロセスは軽量化されました。 モデルのアソシエーションは遅延読み込みがされるようになり、多量のモデルやアソシエーションをもつアプリケーションは顕著に起動処理の時間を減少させることでしょう。 モデルは初期化プロセス時にデータベースのコネクションを必要としなくなり、find操作が発生するとき、またはカラムの情報が必要となった時のみ、データベースに初めてアクセスがなされます。 ビュー¶ View::$output¶ ビューは常に、 $this->output を通して最後に描画されたコンテンツ(ビューかレイアウト)を保持するようになりました。 ヘルパーで $this->_View->output を利用できます。 このプロパティを更新することでビューの描画から出てきたコンテンツを書き換えることができます。 ヘルパー¶ HtmlHelper
CakePHPには利用するデータベース定義を複数定義しておける機能がありますが、その使い分けに関するアイデアです。 よくある解決策 よく開発環境と本番環境で自動的にデータベース接続を切り替えられるように、以下のようにDATABASE_CONFIGクラスのコンストラクタを改良したり、AppModelクラスのコンストラクタに現在の環境を判別できるような設定を書いたりするアイデア多く見かけられます。 DATABASE_CONFIGクラスの改良 class DATABASE_CONFIG { public $default = array(); // 公開用 public $production = array( 'driver' => 'mysql', 'persistent' => false, 'host' => 'production.mysql.server', 'login' => '
Gaming, Opera GX Pimp your smartphone with GX Mods, now available in Opera GX on Android and iOS February 8th, 2024 Transform the look and feel of your smartphone and tablet and browse like a badass by installing dozens of Mods... New green energy-powered AI data cluster with NVIDIA DGX supercomputing coming to Iceland February 7th, 2024 We’re excited to announce plans to deploy a new AI cluster i
仕事でCakePHP 1.3のユニットテストを書きました。 Jenkinsで自動実行させるのが、前にやったときより簡単にできたので 手順をご紹介します。 (職場はLinuxで、紹介するのはMac OS Xでの手順なのでいくつか違う点がありますが) 環境 今回は次の環境に自動テスト環境を作ってみました。 Mac OS Xにインストールしてみましたが、Cent OSにインストールしたときでも、Jenkinsのインストールとテスト実行コマンド以外はほとんど設定方法にかわりはありません。 なお、CakePHPの環境はすでに構築済みでSubversionでバージョン管理していることとします。 Mac OS X 10.7(Lion) PHP や ApacheはHomebrewで用意しました(PHP は5.3.10がインストールされています) CakePHP 1.x系のテスト結果をJenkinsに取り込
中身を少し見てみたところ、かなり色々と仕様が変わっています。ファイル名がキャメルケースになっていたり、独自シェルのファイルの配置が変わっていたります。そのため CakePHP 1.3 のファイル全てを CakePHP 2.0 に一新して、オリジナルのファイルを適用することにします。適用する際に注意することがありましたので、その注意点を以下にまとめます。 設定ファイルは新しいものを使いましょう database.php や bootstrap.php や routes.php を見ただけでも変更点がありました。そのためファイルをそのまま移行するのではなく、これらのファイルに既存の設定を手作業で反映しなおすようにします。 ヘルパーの使い方が変更されました 今までは以下のようにヘルパーを使うことができました。
来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…
Webサイトを自由にカスタマイズできるCMS(コンテンツ・マネジメント・システム)です。 無料で使える国産のオープンソース・ソフトウェアとして、直感的な操作性と高いメンテナンス性、安全性を実現。 さまざまなサーバーで動作可能で、簡単にインストールできます。 固定ページやブログ、フォームをまとめて管理 メールフォームや新着ブログなどのプラグインを標準装備 国産のソフトウェアなので安心・安全のセキュリティ
この本はWindows用に書かれているので、それをMacに照らし合わせながら読み進めていきます。 CakePHP初心者がやってることなので、あまり頭から過信しすぎないようにお願いします。 環境はapache2とPHP5とMySQL5とCakePHP1.2です。 前提として、/Library/WebServer/Documents/cake にcakeがインストールされており、基本的にそこでコマンドを打っているってことで。 まずP31。bakeの方法。 Macだと以下のコマンドでいいみたいです。 sudo cake/console/cake bake project "calendarnote" ここで"app/calendarnote"と引数を渡してしまうと、app/app/calendarnoteという変なところにディレクトリが作られてしまうのでご注意<一度やった。 次。P33。データベ
CakePHP 1.3.0 での Bake の動きを調べてみました。 Cookbook って cake コンソールや Bake について、あんまり書いてないんですよね。 Bakeは色々と機能があるようなので、まずは最初のアプリケーションのセットアップと、データベース設定について、 bake project と bake db_config です。 環境 Mac Mac OS X 10.5.8(Leopard) MAMP 1.7.2 CakePHP 1.3.0 php 5.2.6 CakePHP本体(コア)のパス /Users/myuser/Dev/cakephp1.3.0 作成するアプリケーション(APP)のパス /Users/myuser/Dev/cakephp_baked /Users/myuser/Dev/cakephp1.3.0/app にアプリケーションフォルダがあるけど、コアと
CakePHP: the rapid development php framework. Pages Bootstrap, from Twitter Bootstrap, from TwitterをCakePHP1.3で使う際、ほとんどはHeplerのOption指定でなんとかなる。 しかし、どうしてもなんともらんところがあるので、2つほどファイルを追加した。 Pagination views/elements/pagination.ctp 普通にpaginationを表示させたいところで <?php echo $this->element('paginate'); ?> Forms views/helpers/bootstrap_form.php 基本的に <?php echo $this->Form->input('name'); ?> のところを <?php echo $this-
前回の話はこちらを参照 前回以降もテストしているんだけど、「メモっとかないと忘れちゃうねー」的な話を以下列挙。 それにしても今回は真面目にテストしているぞ(笑 カバレージを測定したかったらテストモジュールの分割方法は、テスト対象モジュール1つにつきテストモジュール1つにするべきだ。 僕が作っているシステムは一般向け画面と管理者向け画面に分かれていて、管理者画面へのアクセスはadmin routingを使っているのだけれど、こういう場合のテストでもコントローラー単位、モデル単位で分割すべきで、利用シーンで分離すべきではない。但し受け入れテスト等、カバレージではなく業務要件への充足確認が中心になる場合は別だけど。 setUp、startTest、startCase等の初期化処理の違いを押さえておくこと。bakeでControllerのテストケースを作るとsetUp()が自動で作成されるが、こ
前置き: テスト駆動開発とは これまでの作業でcakePHPの表示部分を軽く触ってみました。 静的にフッターを表示したので、 次は動的に…と、ようやくプログラムらしい段階に来たのですが、そのまえにTDDを行えるようにしてみます。 TDDというのはTestDrivenDevelopmentの略で、 日本語でいうところの「テスト駆動開発」です。 職業プログラマーでない場合、 聞きなれない言葉だと思いますが、 コードを書く前に、テストケースを準備するという一見変わった手法です。私もまだまだ勉強中ですが、テスト駆動開発を行うと、 ・クラス構造が綺麗になる(自然とテストできるようなクラス=整理されたクラスになる) ・少しづづ構築するので、事象を分断して捉えやすくなる(プログラムを書くというのは複雑さとの戦いです。細かく分断すること、分断して再構築を繰り返すことは複雑さに対する良い武器です) ・修正に
今やっている案件ではCakePHPを使ったアジャイル開発で、当然テストも自動化している。 テストの自動化を徹底的にやったので楽なんだけど、次回の案件のためにどういう観点でテストを組んでおくと良いか、またどこに嵌りがあるかメモとして残しておく。 CakePHPに限らない話 テストしやすい実装にする。例えばメソッドに複数の異なる役割を持たせない。引数と戻り値が明確。適切な行数など MVCの複数レイヤーにまたがる処理を書かない。例えばコントローラの中でSQLじゃぶじゃぶ投げたり、バリデーションチェックをぐちゃぐちゃやったりしない 自動でテスト実行できる仕掛け作り。例えばPHPならphpUnderControl。JAVAならCruiseControlとかHudson。 基本に返って、テストを先に書くという意識付け テストがいっぱいありすぎたら今度はテストのリファクタリング。似たようなテストがコピペ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く