タグ

ブックマーク / sil.hatenablog.com (7)

  • FuelPHPのデフォルトバリデーションルールの仕様について調べた話 - sometimes I laugh

    最近仕事でFuelPHPを使う機会を得たのですが、FuelPHPのデフォルトで用意されているバリデーションルールで少しハマった部分があったため、戒めのためにまとめておきます。 意外とググッても情報が出てこない部分があって、公式ドキュメントはそれなりに充実しているものの、細かな仕様までは書かれていません。最終的にはコアのコードを読むのが一番だと気づいてようやくバリデーションルールの仕様がわかってきたのですが、やっぱり困ったらコアのコードを読む気持ちを持とうよという話です。 前提条件 使用するバージョンは以下の通り。 名前 バージョン PHP 5.5 FuelPHP 1.7 発端になったバリデーション 今回の発端になったのは以下のような名前や年齢を受け取り、検証するフォームです。 コードはこんな感じ app/classes/controller/validation.php <?php cla

    FuelPHPのデフォルトバリデーションルールの仕様について調べた話 - sometimes I laugh
  • FuelPHPのMVCについてちゃんと考えてみた - sometimes I laugh

    フレームワークというものを学びはじめてざっと5ヶ月くらいになるんですが、FuelPHPに限らず、CakePHPRuby on RailsなどのWebアプリケーションフレームでは必ず登場するキーワード「MVC」についてちょっと理解が浅かったので、改めて色々調べてみました。 ようやく自分なりに納得のいく答えができたのでメモとしてまとめておきます。なお、具体的なプラクティスに関する知識は皆無な身の上ですので、「俺はこうやったほうが好き」といったご意見は大歓迎です。ぜひコメントでもTwitterでもいいので一言いただけばと思います。 MVCとは MVCとはModel, View, Controllerの頭文字をとった言葉で、アプリケーション開発における役割の分離を実現するためのソフトウェアアーキテクチャです。簡単に言ってしまうと Modelはデータ加工などビジネスロジックを司るコンポーネント V

    FuelPHPのMVCについてちゃんと考えてみた - sometimes I laugh
  • Jenkins + GitBucketなインスタンスでFuelPHPをバージョン管理する環境構築してみた - sometimes I laugh

    以前までの記事でデプロイ、テストの自動化ができたわけですから、これで後はゴリゴリコーディングするだけ、ということで、Route 53でドメイン購入までしたわけですが、いまさらになってGitHubをリポジトリホストに使うのはちょっと厳しいなと。 できればAWSVPC内にGitサーバ立てて、プライベートなリポジトリホストを使用するつもりだったのですが、そのためにインスタンス立ち上げるのはもったいない、という理由からGitHubを採用していました。しかし、Jenkinsサーバを立てている現状、Jenkinsサーバにリポジトリホストとしての役割を兼任させればいいじゃんという結論に。 HTTP経由でリポジトリを参照するようにしようかなと思っていたところ、社内でGitBucketというGitHubのクローンでサーバ立てたという話を聞き、すごく良さそうだったので試してみることにしました。 GitBuc

    Jenkins + GitBucketなインスタンスでFuelPHPをバージョン管理する環境構築してみた - sometimes I laugh
  • JenkinsでGitHubのプッシュ時に自動デプロイする - sometimes I laugh

    Gitでバージョン管理をしていると、番サーバにデプロイする際に、クライアントでpush、そして番サーバにログインしてgit pull、ってやるのは面倒臭いですよね。そんな不毛な操作は自動化するのがプログラマとしては当然です。 GitHub上のリポジトリで、デプロイの自動化をやるにはWebhookやTravis CI、JenkinsなどのCIツールとの連携を考えます。選択肢は多々あり、それぞれにメリット、デメリットはありますが、今回は後々、FuelPHPのユニットテスト自動化までを見据えて、Jenkinsによるデプロイ自動化を試してみようと思います。 サーバ構成イメージ 今回、Jenkinsを導入するにあたって、専用のEC2インスタンスを立ち上げます。このインスタンスをCIサーバとして利用していきます。 GitHubリポジトリへプッシュされたとき、GitHubはJenkinsサーバへ通知

    JenkinsでGitHubのプッシュ時に自動デプロイする - sometimes I laugh
  • JenkinsでFuelPHPのユニットテストを自動化してみた - sometimes I laugh

    Jenkins、いいですよね。オペレーションの自動化には美があります。前回の記事ではGitによるデプロイ自動化を行いましたが、その時点で既にユニットテストの自動化は想定していたので、今回はそれを実現してみます。 これによって、機能を実装してプッシュする度に自動でデプロイされ、その過程でテストが自動で行われるので、特に通知がなければ動作が保証されるようになります。実際に番環境への適用の際には、もう少ししっかりテストをする必要があるのかもしれませんが、開発環境レベルではテストを意識的に実施せずとも気兼ねなく開発を進めることができます。 ユニットテストにはおなじみのPHPUnitを使います。なお、前回のJenkins導入やデプロイ自動化の話はこちらの記事でまとめてありますのでよろしければどうぞ。 ユニットテストとテスト自動化 従来、プログラムのテストはミスの許されない商用プロダクトでは欠かせな

    JenkinsでFuelPHPのユニットテストを自動化してみた - sometimes I laugh
  • FuelPHPとAWS RDSでMVCプログラミング - sometimes I laugh

    年末にかけてインフルエンザの猛威を受けてしまい、数日ダウンしておりました。 体調はすっかりよくなったのですが、まだ体内を菌がうようよしているらしいので、念のため自宅療養中です。それはさておき、既にネタとして用意しておいたRDSを使ったFuelPHPのMVCモデルプログラミングについて、せっかくですから忘れないうちに記事にしておこうと思いたち、病床から記事を書いてます。 年末年始はようやくまとまった時間が取れるということもあり、VagrantとかDockerとか色々試すぞーと張り切っていただけに、体調不良で早速出鼻をくじかれるとは・・・なんとも情けない限りですね。 前回のおさらい 以前もFuelPHPの記事を書きましたが、こちらでは簡略化のため、Model要素を省いたViewとControllerによるVCモデルプログラミングについて書いておりました。MVCモデルプログラミングの利点は、それ

    FuelPHPとAWS RDSでMVCプログラミング - sometimes I laugh
  • FuelPHPの導入とVCモデルでプログラミングしてみる - sometimes I laugh

    ようやくプログラマらしい記事が書けます。コーディング全然してませんでしたからね。 FuelPHPとは、超高速開発をサポートするPHPフレームワークです。 FuelPHP » A simple, flexible, community driven PHP5.3 framework. http://fuelphp.com/ フレームワークによるプログラミングは、従来のプログラマが開発してきた様々なコンポーネントを、簡単に利用できるため、開発効率を大幅に改善することができると言われています。 PHPフレームワークでは、CakePHP、CodeIgniter、Symfonyなどが普及していますが、FuelPHPはその中のひとつで、CodeIgniterの開発者が集まって開発された、従来のフレームワークの問題を解決するフレームワークとのことです。 数々の選択肢から、私がFuelPHPを選んだ理由は

    FuelPHPの導入とVCモデルでプログラミングしてみる - sometimes I laugh
  • 1