タグ

catalystに関するacotieのブックマーク (60)

  • 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で静的ファイルや画像を扱う ― Ryuzee.com

    Catalyst-Plugin-Static-Simple-0.08.tar.gz sub static_page : Regex('.+.html') { my ( $self, $c ) = @_; $c->serve_static; } ※ちなみに利用する際はuse Catalyst ‘Static’;を記述しておく。 Catalystのrootディレクトリ(scriptやlibと同一階層)にファイルを配置すれば読み込まれる。 必ずControllerを経由してHTMLや画像をディスパッチするようにすると、Controllerへのオーバーヘッドが大きい気がするが、セッション内の場合は少なくとも静的コンテンツ自体もコントローラを経由させ、権限やセッションのチェックを実施したほうが良い。 画像だけならTemplateに直接別のパスへのリンクを書いておいても 良いと思われる。 “Cata

  • CatalystでURL最適化 - 考え得る最高を常に行う

    Catalyst::DispatchType::Chainedを使うとスッキリしたURLで組める。 似たような事はRegexやLocalRegexでも出来るけどこっちの方が重複するようなコードが軽減できる。 Chained属性に指定したPrivate Names(コントローラーのメソッド名)を使って処理をつなげる事ができる。 例えば以下のURLを処理するとき、処理はこうなる。 http://example.com/users/1/books/2 /users/1は共通してユーザの検索 その後に続くbooks/2はそのユーザのIDが2のを表示 基 では早速、以下の様なURL群を設計 /add /* /*/edit /*/entries/* /*/entries/*/delete CatalystのControllerの実装はこんな風になる。 # [CAPTURE] / sub root_

    CatalystでURL最適化 - 考え得る最高を常に行う
  • [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

  • [Catalyst][YAML] ViewのconfigもYAML化 - cyberlib.enterbrainz.com

  • 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でロジックをどこに置くかという話 - libnitsuji.so

    Catalystをちゃんと勉強しはじめてからずっと頭の片隅にあるけどまだ解決せず。 俺以外にも悩む人はぜったいいるはずだと思っていたけどMLを検索する方法がよくわかんなかったのでいまいち網羅できず。ひとまず、 Catalyst MVCの覚え書き - libnitsuji.so こんな感じだったのだが、今日、 http://www.mail-archive.com/catalyst@lists.rawmode.org/ を見つけたので「logic」で検索! 興味深いスレッドとして、 [Catalyst] Program the logic [Catalyst] ways to do stuff and why の二つがあったので読んでみた。 実装までは踏み込んでいないのでそれ以前の話だけど。俺の頭の中もまだ実装前なので具体的にどう実装するかはひとまず置いておく。 俺の疑問点とか考えとかを書い

    Catalystでロジックをどこに置くかという話 - libnitsuji.so
  • 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

  • catalyst:dbic [paulownia.jp]

    DBIx::Class::Schema::Loaderを入れれば、その上の3つもインストールされる。DBDはどれを使うか聞かれるがデフォルトは「インストールしない」なのでリターン連打しないように注意して。ほかにも物凄い大量の依存パッケージをインストールする。 CatalystのDBIサポート関連クラスをCPANでインストール 適当なテーブルを作る。 CREATE TABLE books ( id INTEGER NOT NULL AUTO_INCREMENT, isbn VARCHAR(13), title VARCHAR(255) NOT NULL, author VARCHAR(255), summary TEXT, PRIMARY KEY(id) ) character SET utf8 type=innoDB; テスト用に適当なデータもブッ込んでおく insert into boo

  • 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にお勧めのプラグイン集と統一されたドキュメントがバンドルされたもので、インストールは比較的簡単である ベースとなっているコンポーネントは既に使われている安定したもので、改名してあるものの、安心かつ安定して使

  • 2007/03/16 - memo - unknownplace.org

    cofsもあった。 VMWare Server だと vmware-tools についてるファイル共有のカーネルモジュールをインストールすれば共有できるはずだけど、Debianではコンパイルできなかった。 これみて、 デスクトップ百景 そう思った。いまは VMWare Server の時代!! 僕が思う colinux のほうが優れているところはその PC に ext3 領域とかあってそれを colinux から使いたいとかそういう場合があるときのみ。 それ以外はすべてにおいて VMWare Server のほうが優れていると思う。あ、パフォーマンスは分からない。 VMWare Server のほうが特に優れているところは以下。 仮想マシンをサスペンドできる ので、Windows Update とかきて PC を再起せざるを得ない状況になったらおもむろに仮想PCをサスペンド。PC再起動。

  • Craftworks » C::P::FormValidator::Simple と C::P::FillInForm と DBIx::Class::WebForm

    物凄い便利です。 FormValidator::Simple だけでも充分便利すぎるのに、FillInForm はテンプレートに条件分岐などかかなくても勝手に value アトリビュートを探して値を入れてくれるし、WebForm もフォームから一発で DB を更新してくれたりします。FormValidator::Simple::Auto が DBIC_UNIQUE に対応してないそうなので(試していません)、そこが対応になればもう言うことないですね。 WebForm の情報が少なく、導入に手間取ったのでメモを残しておきます。 DBIx::Class::Schema::Loader で自動生成した Schema クラス package MyApp::Schema::User; とかに以下のように追加。 use base ‘DBIx::Class’; use base ‘DBIx::Clas

  • Catalystでmixi OpenIDからニックネームを取得 - Problems

    ボヤボヤしてるうちにmixiがOpenIDのProviderになって、そろそろOpenIDのRPに対応する準備しとかんとあかんやろ、と思い、認証してニックネームを取得してくるだけのRPのテストプログラムを作ってみた。 ここで紹介されているサンプルのCatalyst版(の更にマイミク認証を除いたやつ)です。 mixi OpenIDで「マイミクシィだけの掲示板」を作ろう(Perl編) - ラーニング人生。 Catalystは当然インストールしてあるとして、事前にNet::OpenID::ConsumerとCatalyst::Authentication::Credential::OpenIDの2つのモジュールをCPANに上がっているやつじゃなくてSubversionのリポジトリから取得してそれぞれインストールします。 Net::OpenID::Consumerの方は依存モジュールに注意した方が

    Catalystでmixi OpenIDからニックネームを取得 - Problems
  • Catalystの基礎 アプリケーション編

    Catalystの基礎 アプリケーション編 大西 祥代,廣安 知之,三木 光範 ISDL Report No. 20060913003 2006年 10月 17日 Abstract 報告ではPerlのWebアプリケーションフレームワークであるCatalystを用いてサンプルプログラムの作成を行う.作成するものは,簡単なbookmarkのアプリケーションである.サンプルプログラムを作成することを通して,MVCモデル型のプログラミングを理解し,Catalystについての理解を深めることを目的とする. 1  はじめに 報告ではPerlのWebアプリケーションフレームワークであるCatalystを用いてbookmarkアプリケーションを作成する.簡単なサンプルプログラムを作成することでMVC型のプログラミングやCatalystを理解する. 2  準備 2.1  モジュール・プラグ

  • Perl-Catalyst - yanor.net/wiki

    2023-11-03 Windows/エクスプローラー/レジストリでアプリケーションの関連付けをする 2023-10-30 Windows/WSL/環境構築/ディストリビューションのアンインストール MySQL/環境設定/Debian 10にMySQL8をインストール 2023-10-26 Vim/環境設定/インストール/WindowsZIPファイルでインストール Windows-アプリケーション/Mery/インストール Windows/WSL/ファイルシステム/WSL2のディスクスペースを開放する Git/設定/TortoiseGit Git/設定/TortoiseGit/libgit2でnot owned by current userなエラーが出る 2023-10-23 Windows-アプリケーション/Mery 2023-10-10 ウェブ開発全般/CodeSandbox/概要