タグ

perlとcatalystに関するacotieのブックマーク (34)

  • Plack+CatalystでWebアプリ(とCLI)を作ってみる - As a Futurist...

    1 年間インフラ修行ばっかりやってて、カタムースとかプラック企業の流れに乗り切れなかったので 一念発起して最近趣味で Plack と Catalyst で Web アプリを書こうとしています。 ただ、アプリのロジックに入る前に、そもそもモジュールの構造をどうしようかと 試行錯誤するだけで数週。。。一旦ここまでのまとめをしておきたいと思いました。 Perl 界隈の方々は当にエロくてすばらしいなと改めて感じました。 自分のプログラムセンスの無さをひしひしと感じてますが、 今回のアプリの開発を通じて何か CPAN に上げて、僕もエロくなれたらいいなぁ とか密かに思ってたりしてます。 それは MyApp::Web から始まった とりあえずモダン Perl 入門にあるように、以下の様なコマンドで Catalyst 用のモジュールを 一段名前を掘って作りました。 catalyst MyApp::We

    Plack+CatalystでWebアプリ(とCLI)を作ってみる - As a Futurist...
  • [Catalyst][YAML] ModelのconfigもYAML化 - cyberlib.enterbrainz.com

    [Catalyst] [YAML] 便利。 [Model](lib/MyApp/Model/MyAppDB.pm)の以下削除 __PACKAGE__->config( schema_class => 'MyAppDB', connect_info => [ 'dbi:mysql:DBNAME:192.168.0.1:3306', 'ID', 'PW', ], ); [myapp.yml]に以下追加 Model::MyAppDB: schema_class: MyAppDB connect_info: - dbi:mysql:DBNAME:192.168.0.1:3306 - ID - PW ex)http://search.cpan.org/~bricas/Catalyst-Plugin-ConfigLoader-0.14

  • get_actionの動作 - Tociyuki::Diary

  • Perl-Catalyst/Controller/ページング - yanor.net/wiki

    ページング ページ番号のパラメーターをpageとする。ページ番号は1から始まる。1画面で表示する件数は30件とする。 アクションクラス 以下のように、DBからデータを取得する時にページ番号を渡す。結果セットからページャーオブジェクトを取得し、stashに入れる。 sub list { my $page = int($c->req->param('page') || 1); $rs = $rs->search(undef,{ page => $page, rows => 30, order_by => 'regist_date desc' }); $c->stash->{pager} = $rs->pager; } テンプレートファイル stashにあるpagerオブジェクトからページ番号が取り出せるが、uri_with()を使うことにより、このページをリクエストされた際のクエリストリングが

    acotie
    acotie 2009/09/02
    uri_with()を使う
  • Catalyst::Manual::Cookbook::Deployment - libnitsuji.so

    Cookbook長いので分割。 デプロイについてのレシピ。Webサーバーエンジンとアプリケーションの効率化も含む。 http://search.cpan.org/~jrockway/Catalyst-Manual-5.700701/lib/Catalyst/Manual/Cookbook.pod#Deployment mod_perl Deployment mod_perlは多くのアプリケーションに対しての最適解だけど利点と欠点を述べる。他の方法としてはFastCGIがある。 Pros Speed mod_perlはとても高速で、それぞれのApacheプロセスのメモリにアプリケーションをロードすることによって恩恵を受けられる。 Shared memory for multiple apps 同じサーバーで複数のCatalystアプリケーションをする必要がある場合、mo_perlは共通のモジ

    Catalyst::Manual::Cookbook::Deployment - libnitsuji.so
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • たけまる / Catalyst::Controller::Atompub リリース

    リソースの削除 操作を実装するメソッドには "Atompub" という attribute を付与します. たとえば,List を実装するメソッドは,"sub xxx :Atompub(list)" のよ うになります. 余談ですが,DB Schema を決め打ちにしてしまえば,これらの操作すら実 装不要にできます.しかし,DB Schema はサービスの肝になるので,自由 度を持たせることにしました. リソース操作以外の処理は,Catalyst::Controller::Atompub が勝手に行 います.たとえば,Entry に app:edited 要素を追加したり,Slug header から URI を生成したり,適切な HTTP header を設定してくれます. それでは,まず Controller を作成します. $ ./script/myatom_create.pl co

  • 初めてのCatalyst入門(1) PerlによるWebフレームワークCatalystとは?

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    初めてのCatalyst入門(1) PerlによるWebフレームワークCatalystとは?
  • catalyst - Japan Perl Association Wiki

  • Sugmak: 11/2008

    2008/11/15 「The evolution of Perl frameworks」日語要約 原文は The evolution of Perl frameworks Perlフレームワークの進化 西暦2006年、Perl製Webフレームワークの土俵では重量級のCatalystと軽量級のCGI::Applicationが戦っていた。その後、Perl製フレームワークの選択肢は進化を遂げた。CGI::ApplicationとCatalystは共に人気を保っているものの、最近では新たな選択肢もいくつか登場した。以下でザッと説明しよう。 Titanium CGI::Applicationにお勧めのプラグイン集と統一されたドキュメントがバンドルされたもので、インストールは比較的簡単である ベースとなっているコンポーネントは既に使われている安定したもので、改名してあるものの、安心かつ安定して使

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Perl の MVC フレームワーク Catalyst のお勉強〜その1〜 :: Drk7jp

    時間が空いているときに Catalyst のお勉強をしていたのですが、なかなか情報をまとめる時間がとれないのです・・・。思ったより苦戦したので少しずつでもお勉強の情報をまとめていこうと思ってます。今回はその1ってことで。Catalyst をこれからお勉強してみようって方の参考にでもなれば幸いです。 実際には、アプリケーションを1つ作ってみるってところまで既に2週間前に終わっていたりするのですが、その解説に至るまでどれくらい時間かかるんだろう・・・ (。・x・)ゝ Catalyst の基礎知識 Catalyst のフレームワークの構成は上図のような構成になっています。純粋な MVC ではなく、MV C + A(Apprication) のような構成になっていますが、Application の部分は Dispatcher 機能に相当する部分で、実装時には MVC の考え方で問題ありません。 M

  • Elementary, ... use Catalyst qw(初挑戦);

    Catalystとは!? Perl界でじわじわもりあがってきてるMVCウェブフレームワーク Catalyst を試してみた。 Catalyst は Maypole というフレームワークの後継らしい。MaypoleのページのCatalystの説明によると、 Catalyst is a new, elegant web application framework for Perl. It is based on Maypole and adds many features from Ruby-on-Rails, Struts, Spring and Tomcat in a new and innovative way. と言われていて、いろいろな既存プロジェクトからエッセンスをもらったフレームワークなんだね。 こいつの大きな特徴は、いくつかのコマンドを打つだけでアプリの原型(スケルトン)を作

  • CatalystとTT用snippetsEmu.vim設定 - spiritlooseのはてなダイアリー

    最近のお気に入りVimプラグインはsnippetsEmu.vimなんだけど、色々といじってる割に晒してなかったのでいまさらながら晒してみる。 動作画面はこんなかんじ。 http://spiritloose.googlepages.com/catalyst_snippets.htm (TTYShareはなぜかうまく再生されなかったので泣く泣くWink) まずCatalyst用。 exec "Snippet debug $c->log->debug('".st."name".et.": '. \$".st."var".et.");<CR>".st.et exec "Snippet warn $c->log->warn('".st."name".et.": '. \$".st."var".et.");<CR>".st.et exec "Snippet dumper $c->log->dumper

    CatalystとTT用snippetsEmu.vim設定 - spiritlooseのはてなダイアリー
  • IOCだDIだ - D-6 [相変わらず根無し]

    IOCだDIだ mstがcatalystについてのインタビューで次期CatalystでMooseだけじゃなくてIoC (Inversion of Control) とか (DI) Dependency Injectionとか使うような事を言っているよ! IoCとかDIってJava界隈ではよく聞くけど、Perl界ではあまり聞かない。自分がちゃんと人に説明できるようにするついでにメモ: まず、IoC はほぼDIと同じ物。なんか時々細かい差を強調する人もいるが、一般的には同じでOK。あと、この二つのコンセプトは別に新しくない。少なくともCatalystを使ったことのある人ならすぐ分かるはず。例えば、以下のよく見るコード: my $model = $c->model('Hoge'); Catalystが先に'Hoge'というモデルを作成し、保存(Inject)しておいてくれたおかげで、上記のように

  • [ThinkIT] 第1回:Catalystの導入 (1/2)

    Catalystは、PerlのWebアプリケーションフレームワークです。同じPerlのWebアプリケーションフレームワーク、Maypoleの後継で、Ruby on RailsやStrutsにインスパイアされて作られたものです。 MaypoleはデータベースのCRUD(Create、Read、Update、Delete)に焦点が当てられていましたが、Catalystはもっと汎用的なWebアプリケーションのために作られました。そして、Ruby on RailsやStruts の良いとこ取りをした、洗練されたWebアプリケーションフレームワークになっています。 Catalystを使うとWebアプリケーションに必要なものがほとんど全て手に入り、簡単かつスマートに開発できます。 Webサーバー Catalystは、CGI、mod_perl、mod_perl2、lighttpd、FastCGI等々、さ

  • Perl.com: Catalyst の翻訳

    Jesse Sheidlowerさんの許可を得て、翻訳を公開しております。なお、この翻訳は、under same terms of Perl itselfで、配布可能です。 原文はこちら: Catalyst 目次 Jesse Sheidlower June 02, 2005 Web frameworks are an area of significant interest at the moment. Now that we've all learned the basics of web programming, we're ready to get the common stuff out of the way to concentrate on the task at hand; no one wants to spend time rewriting the same bits

    acotie
    acotie 2008/08/14
    あとで読む
  • 「第4回 Catalyst(前編)---Perl向けWebアプリ・フレームワーク:ITpro」を Ubuntu 8.04LTS で - Tociyuki::Diary

    id:hyuki さんの ITpro の連載で、Catalyst を取り上げています。記事では Windows での使い方を説明してますので、Ubuntu Linux 8.04LTS で同じことをやってみました。 ⇒ 第4回 Catalyst(前編)---Perl向けWebアプリ・フレームワーク:ITpro 依存関係が複雑なモジュールを扱うため、Ubuntu 8.04LTS のバイナリ・パッケージ管理機能を使って、deb パッケージからインストールすることにします。SQLite は、特に 2 を使わなければならない理由がない限り、3 を推奨したいので、sqlite3 を使うことにしました。設定を YAML で記述したいので、それもインストールしておきます。元記事で使っている、Data::Uniqid モジュールは ubuntu の deb リポジトリにないようですので、これだけは CPAN

    「第4回 Catalyst(前編)---Perl向けWebアプリ・フレームワーク:ITpro」を Ubuntu 8.04LTS で - Tociyuki::Diary
  • Catalyst::Manual::Intro - はじめてのCatalyst

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

  • catalyst:tt [paulownia.jp]

    Catalyst::Helper::View::TT ( or Catalyst::Helper::View::TTSite ) Template Toolkit 体が入ってなければ、それも入れる。たぶん一緒に入るはず(覚えてないw) ヘルパースクリプトでTemplate Toolkit用でビューを処理するクラス作成 $ ./script/hoge_creator view TT TT 最初のTTはクラス名、後ろのTTはテンプレートツールキットを使うよ、の意味 $ ./script/hoge_creator view TT TTSite とすると、WRAPPERなどの設定が入ったTTクラスを作ってくれる。詳しくはググってちょうだい。 テンプレートファイル置き場をアプリケーションディレクトリに作成 $ mkdir ${APP_ROOT}/root/tmpl ${APP_ROOT}/Hoge

    acotie
    acotie 2008/08/14
    wrapper