サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一本吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には食材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい食材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ
自分の最近のCatalystのモデル部分の書き方 こちらのブログでなんか呼ばれた気がしたのでとりあえず書いてみた。 あくまで自分はどうしてるか、って話ですが、最近はCatalystでなんか書くときはこんな感じで使ってます。 色んな事がこの図に詰まっているので、箇条書きしてみる: Model::APIがAPIオブジェクトを作成して、使用時にはModel::APIに対して`find()`というメソッドを使って実際のAPIオブジェクトを持ってくるSchema等はMyApp::Schemaに定義し、Model::APIのアトリビュートとして持っている。cacheも同等。これらの初期化引数は設定ファイルのModel::APIから取れるようにしておくCatalyst::Model::DBIC::Schemaは*使ってない*Model::APIではACCEPT_CONTEXTが呼ばれた時点で、もしまだ初
Data::Localize & Catalyst::Model::Data::Localize Data::Localize 0.00001をリリースした。やってることはLocale::Maketextと一緒。主な違い: オブジェクトベース。Locale::Maketextは名前空間をいじってどうのこうのするんですが、これはしない。基本的には登録されているハンドラを全て試す、っていうだけ。デバッグ用のメッセージを一杯仕込んだので、なぜか国際化がされない場合は多分Locale::Maketextより問題箇所の判断が大分楽Locale::Maketextより速い速さに関しては、以下の通り: daisuke@beefcake-7 Data-Localize$ perl -Mblib tools/benchmark/benchmark.pl Rate locale_maketext data_
以前から Controller にロジックをガリガリ書いてて、いい加減分離とかテスト書けるようにリファクタリングしないとなと思っていたので、モダン Perl 入門を読んで、今までなんとなくモヤモヤ考えていたことが、かなりクリアになったのをきっかけに、ファイルレイアウトをごっそり変えてみました。 ./lib ./MyApp ./Schema ./API ./CLI ./WUI ./View ./Controller ./Model ./API.pm ./DBIC.pm ./Base ./Controller ./Resources.pm ./Root.pm ./script ./t ./template ./p ./m ./conf ./sql ./structure ./data ./static ./image ./css ./js Adaptor で読み込むモジュールは大体 Servi
以前、Catalystでマルチバイトを取り扱うときのまとめという記事を書いたのですが、情報が少し古いので、最近僕がやっている方法を紹介します。 この記事では Catalyst 5.7015 Catalyst::View::TT 0.27 Catalyst::Plugin::ConfigLoader 0.22 Catalyst::Plugin::FillInForm 0.10 Catalyst::Plugin::Static::Simple 0.20 Catalyst::Plugin::Unicode 0.8 の環境で紹介しています。 また、基本的にDBICに関しては以前の記事の通りDBIx::Class::UTF8Columnsを使うという感じです。 まず、こんな感じのアプリケーションを用意します。 MyApp package MyApp; use strict; use warnings
題名 Catalyst::Manual::Cookbook - Catalystでお料理を 説明 ママが昔よく焼いてくれたおいしいコード! レシピ デバッグ画面を強制表示する endアクションでdie()を呼び出すと、リクエストの最後にデバッグ画面を強制表示させることができます。 sub end : Private { my ( $self, $c ) = @_; die "forced debug"; } いちいちこれを書いたり消したりするのが面倒なら、endアクションにこんな条件文を加えることもできます。 sub end : Private { my ( $self, $c ) = @_; die "forced debug" if $c->req->params->{dump_info}; } こうしておくと、たとえばクエリストリングに"&du
Situs Judi Slot Online SANDBET Penyedia 21 Provider Slot Gacor Perubahan zaman dari tahun ke tahun tidak terlepas dari perkembangan teknologi digital, fenomena ini juga berimbas pada taruhan mesin slot yang biasanya hanya dimainkan di casino dengan koin atau uang asli. Dimana kini, Anda dapat bermain taruhan ini secara langsung atau online tanpa terikat waktu dan tempat atau berpergian jauh ke neg
hide-k.net#blog: C::P::Email::Japaneseの文字化け対処 でWAVE DASH問題に何とか対応しようとしてMIME::TT::Lite::Japaneseに手を加えるというトンチンカンなことをやっていましたが、subtech - Bulknews::Subtech - cp932 vs. shift_jisでEncode::Aliasを使えばいいんじゃないかというお話があったのでEncode::Unicode::Japaneseとからめて試してみました。 sub send : Private { use Encode::Alias; use Encode::Unicode::Japanese; define_alias( qr/jis$/i => '"unijp-jis"' ); $c->email( Template => 'email.tt', To
これまで使用していたミニサーバーは、あくまでも開発時のデバッグ用のもので あり、実運用を考えた場合はちゃんとしたWebサーバーのもとで動作させる必要 があります。ほとんどの場合Apacheを利用することになると思いますが、方法と しては、FastCGIとして動作させる場合とmod_perl環境で動作させる二通りがあ ります。どちらを利用するかですが、Perlで開発をしているのなら、後者を是非 採用したいところです。というわけで以降mod_perlでの動作方法を説明します。 mod_perlの準備 FedoreCoreなどではコンパイル済のmod_perlがインス トール時から入っていますし、FreeBSDでもportsでのインストールができます。 しかし私の環境ではゼロからビルドしましたので、その手順を以下に示します。 mod_perlはここか ら入手します。Apacheは既にインストール
はじめに Catalyst::Plugin::ConfigLoaderを使うと異なる環境の為の設定を環境変数のみで制御出来ます。 下準備 ちょっと癖物なのが下記のように設定しなきゃいけないって事です。 package MyApp; use Catalyst qw/ConfigLoader/; __PACKAGE__->config( file => __PACKAGE__->path_to(conf) ); で実際にconfディレクトリに下記のようにファイルを作ります。 $ ls conf/ myapp.json myapp_local.json myapp_service.jsonこうして例えば、 $ cat conf/myapp.json { name: 'MyApp', foo: 'foo' } $ cat conf/myapp_local.json { foo: 'bar', ba
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. と言われていて、いろいろな既存プロジェクトからエッセンスをもらったフレームワークなんだね。 こいつの大きな特徴は、いくつかのコマンドを打つだけでアプリの原型(スケルトン)を作
最近、Ruby on Railsを始めとして各種プログラミング言語におけるWebアプリケーションの フレームワークに関する話題がホットです。種々のプロダクトがある中で、Java におけるStruts の様に定番の地位を不動のものにしたものがある一方で、PHPのように乱立状態 の様相を呈しているものもあります。そんな中でPerlでは昨年(2006年9月現在) あたりから、高い拡張性、既存のCPANモジュールとの親和性を「ウリ」としたCatalystがMVCフレー ムワークとして注目されてきています。ただ新しいこともあってか、日本語情報 が少ないのが現状です。 そんなCatalystですが、 まずは論より証拠、自分自身で試用してみることにしました。 仕様 さしあたって例題としては簡単な掲示板を作ってみました。スレッド式のもので、 オリジナルメッセージにコメントを追記できるようなものです。ただし
今年は Japan Perl Association が4月末にリスボンで開催された Perl Toolchain Summit のスポンサーについてくださったということで、久しぶりに日本語の記事も用意します。細かなことまで興味のある方は英語版のレポートもあわせてご覧いただければとおもいますが、ざっくり本年の成果を説明しますと、 Perl 5.37 で導入された class 宣言を PAUSE が認識できるようにしました。 PAUSE にアップロードしたモジュールがインデックスに掲載されない事件の原因となっていたデッドロックの問題を解消してきました。 将来の Perl や PAUSE の開発に関する議論などに参加してきました。 class 宣言については、2000年に Perl 6 の構想が発表されてからというもの、MooseX::Declare を代表とするいくつかの実験的なモジュールが
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く