タグ

perlとCatalystに関するclouderのブックマーク (13)

  • ゆーすけべー日記

    サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ

    ゆーすけべー日記
  • Catalyst::Manual::Intro - はじめてのCatalyst

    題名 Catalyst::Manual::Intro - はじめてのCatalyst 説明 ここではなぜ、またどうやってCatalystを使うのかを簡単に紹介します。Catalystの挙動について説明し、簡単なアプリケーションを手早く立ち上げる様子をご覧に入れます。 Catalystとは? Catalystとはエレガントなウェブ・アプリケーション・フレームワークです。きわめて柔軟なのにきわめてシンプル。Ruby on RailsやSpring (Java)、そしてCatalystの元となったMaypoleによく似ています。 MVC Catalystはモデル・ビュー・コントローラ(MVC)というデザイン・パターンを踏襲しているため、コンテンツ、プレゼンテーション、フロー管理といった問題を簡単に切り分けて独立したモジュールにすることができます。こうして切り分けることで他の問題を処

  • 初めてのCatalyst入門(5) フロー制御とChainedアクション

    はじめに 前回では、主にリクエストパラメータの扱い方について説明しました。クライアントからデータを受け取る方法には、リクエストパラメータ以外にもパスに含める方法がありますが、特に日語文字列を扱う場合には内部で扱う文字コードとクライアントとやりとりする文字コードをよく考えて設計する必要があります。記事では、これまで2回に渡って説明してきたコントローラ編の最後として、アクションから別のアクションを呼び出すフロー制御について説明します。 また、第3回で簡単に紹介したChainedアクションについてもサンプルを交えて説明していきます。 対象読者 Perlで簡単なスクリプトを作成したことのある方 Webアプリケーションの基的な仕組み(HTTPリクエスト、レスポンスなど)についての知識のある方 これまでの連載 初めてのCatalyst入門(1) PerlによるWebフレームワークCatalyst

    初めてのCatalyst入門(5) フロー制御とChainedアクション
  • MobileCat

    MobileCat とは さいきんすっかり放置です、すみません。このページとソース逆引きのページだけ静的に残してあります。参考程度にお願いします。2009/8 冨田 Perl で、CPAN モジュールをさまざま組み合わせてモバイルサイトを作る方法を紹介してみるプロジェクトです。(紹介記事) このサイト http://mobilecat.koneta.org/ 自体がサンプルとなっています。UA を変えたり携帯からアクセスしてみてください。 Links ソース一式 // thanks coderepos ソース逆引き - 簡単な解説のページ TODO founder: Naoki Tomita (モバイル系ブログ) 携帯開発系チャンネル: #mobilejp @ irc.freenode.net おことわり スケールのサンプルになる必要もないだろうと、個人サーバーで軽く動かしているため、修正

  • Craftworks Tech Blog » Catalyst でかんたんログインを実装する

    前回の、Catalyst でオートログインとブラウザを閉じるまで有効な Cookie を共存の続きです。 mixi などで実装されている、携帯端末固有情報や契約者識別情報を利用した、「かんたんログイン」を実装する方法を紹介します。 まずは、ユーザー情報のテーブルに uid を格納するカラムを用意します。Schema も変更するのを忘れずに。 ユーザーがログインした後のページで、かんたんログインの設定をするページを作ります。 package MyApp::Controller::User; sub uid_update : Path('uid/update') { my ( $self, $c ) = @_; $c->user->mobile_uid($c->req->mobile_agent->user_id()); $c->user->mobile_agent($c->req->user

  • おどおどしつつCatalystをモバイルサイト開発に導入してみた:モバイルコントローラー編 - とあるモバイル系エンジニアの日々

    せっかくようやっと題であるモバイル開発の話がでると思っていたんですが、エントリの内容の正当性に自信がないのでいろいろ悩んでいたら、更新が滞ってしまいました。。まだちょっと悩み中ですがとりあえず公開してみます。 文字コードの扱い方針 文字コード取り扱いの基ルールは以下のようにしました。 パラメータは入力された段階で、入ってきたパラメータをUTF-8エンコーディングに変換する。 テンプレートはすべてUTF-8で記述する。アプリケーション側では、utf8フラグなしで読み込んで使用する。 DBにはutf8のキャラクタセットで保存する。 ビューでレンダリング時に携帯端末に合わせてエンコーディング変換する。 具体的には、まずルートコントローラー(MyApp::Conteroller::Root)で、$c->req->paramから、utf8フラグなしのUTF-8エンコーディング文字列に変換します。

    おどおどしつつCatalystをモバイルサイト開発に導入してみた:モバイルコントローラー編 - とあるモバイル系エンジニアの日々
  • 第8回 Reaction:CatalystをもっとDRYに | gihyo.jp

    アプリケーションの枠組みを越えた再利用 前回は、Catalyst 5.7で登場したチェーンドアクションを利用して適切なベースコントローラをつくれば、CRUDのような定型処理は再利用できるようになる、という話をしました。これはコンテントマネジメントシステム(CMS)のように同じようなインタフェースを持つ画面が多いシステムをつくるときには特に効果的なのですが、その再利用を、ひとつのアプリケーション内だけで完結させてしまうのはもったいない話。自社でつくるアプリケーションにはどんどん使い回していきたいものですし、コピー&ペーストを避けるためには、なんらかの名前空間上にその共通コードをまとめていく必要があります。 もちろんそのコードが小さく、十分に一般化できるものなら、Catalyst、あるいはCatalystXという名前空間に入れてもかまいませんが、コントローラの部品だけでなく、モデルやビューまで

    第8回 Reaction:CatalystをもっとDRYに | gihyo.jp
  • CatalystのChainedアクションを使いこなすための3つのルール - (゚∀゚)o彡 sasata299's blog

    2009年05月16日13:45 Perl CatalystのChainedアクションを使いこなすための3つのルール 僕は最近、Chainedアクションを良く使っています。だってとっても便利なんです>< 特に http://localhost:3000/hoge/*/*/edit みたいな複雑なURLに対するアクションを作りたいときなど、大活躍です!最近ではautoとかbeginをChainedで代用するように。。。(*´Д`*) サンプルはこんな感じ。 sub mysetup : Chained('/') PathPart('') CaptureArgs(2) { my ($self, $c, @arg) = @_; $c->log->debug("in mysetup"); $c->log->debug( $arg[0] ); $c->log->debug( $arg[1] ); }

  • Moosification: Catalyst 5.8に移行した際にちょっと気づいた事。 - D-6 [相変わらず根無し]

    Moosification: Catalyst 5.8に移行した際にちょっと気づいた事。 最初からMooseベースでアプリケーションを作るというのは、実務ではなかなか難しいのはわかります。一般論は JPA #02で話すのでおいておきますが(参加申し込みは今日5/12までですよ!)、5.8 からMoose化したCatalystであった問題・注意点をちょっと書き出してみます。 1. use Catalyst Catalyst::Upgradingを読んでいると package MyApp; use Moose; extends 'Catalyst'; __PACKAGE__->setup(qw/ ConfigLoader /); という表記が見られるが、これは気をつけないと駄目。 自分が直面した問題は、path_to()等を使った時に起こった。path_to() は現アプリのルートディレクトリ

  • 続:Catalystでマルチバイトを取り扱うときのまとめ - hide-k.net#blog

  • 『Extractor』へのコメント

    ブックマークしました ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください Twitterで共有

    『Extractor』へのコメント
    clouder
    clouder 2006/02/10
    ちょっとまて、ブックマークする前にExtractor
  • ハテナオヤのネタにかぶせろ!Catalyst::Plugin::XFramework

    ん?たまには流行りにのってもいいじゃない!ってことで、Catalyst::Plugin::XFrameworkを作ってみた。 % HEAD http://localhost:3000/ 200 OK Connection: close Date: Fri, 09 Dec 2005 15:42:14 GMT Content-Length: 1695 Content-Type: text/html; charset=utf-8 Client-Date: Fri, 09 Dec 2005 15:42:14 GMT Client-Peer: 127.0.0.1:3000 Client-Response-Num: 1 Status: 200 X-Catalyst: 5.61 X-Framework: Catalyst/5.61 そもそもX-Catalyst:って付いてるんだけどね。いいじゃない…!

    clouder
    clouder 2005/12/10
    ↓あ、ほんとだ。デバッグモードでないとX-Catalystは出ませんね。
  • Catalyst入門としてのお作法についてについて

    ひげぽん OSとか作っちゃうかMona- - Catalyst入門 と お作法について templateの include rootからのパスを指定してやればよい [% include templates/user/username.tt %]はてなのひげぽんさんがCatalystについて書いていたのでそれを受けて書いてみます。上記のこれは、root/base/の中に読み込みたいincludeファイルを入れてやると、それがTTのINCLIDE_PATHに入っているので [% include username.tt %]で読み込めるようになります。Catalyst::View::TTの103行目付近にその記述があります。ちなみに、テンプレートの中にデフォルトで使えるようになってる変数はbase($c->req->base), c($c), name($c->config->{name})の3

    clouder
    clouder 2005/10/19
    catalystは自由度タカス
  • 1