CakephpでURL書き換えつつPagenation(ページング)

CakephpのPagenatorヘルパーを使ってページングを実装する話。
ただ、URLはデフォルトのものじゃなくて、自由にやりたいんだけど?という制約。

(続きを読む…)

UNIXコマンドをPerl(CGI)で動かそうとする

外部からはSSHが通せないサーバーのスクリプトを動かしたいというのがテーマ。
crontabとかではなくて、任意のタイミングで。

(続きを読む…)

こんにちはblogparts

はじめてではないPerl

昔よく簡単なアプリを作るのに使っていたので書けるつもりでいたPerl
今度仕事で使いそうだったので、ちゃんと勉強してみようと思い本を買った。
それも易しめのタイトル「はじめてのPerl」、しかしオライリー。

語弊を恐れず書くと、読んでみたらさっぱり分からないのなんのって。
きっと読めない、書けないわけではないんだけど、知らない文法とか機能が多くて驚いた。
PHP書けるから余裕だと思っていたけど、それなんかよりよっぽど複雑な言語だった。
でも、全部覚えたら楽しそう。複雑なアルゴリズムが短いコードでぬるぬる書けたら絶対楽しい。
この上にRubyがあるって思うと更に。
ちゃんと勉強しよう。

ちなみにPerlの本、続きがあって。
表紙に毛が生えた「続編」

全員大集合の「マスタリングPerl」

表紙が面白い。

WicketでMarkupExceptionがうるさい

ApacheWicketで、wicket:idをマークアップしたのに、componentを追加していないと怒られる。
逆にcomponentを追加したのに、wicket:idをマークアップしていないと怒られる。
ここまでは大丈夫。
むしろ、親切なFWだなぁって最初は思っていた。

だけど、だんだん開発を重ねるうちにMarkupExceptionがうるさく感じてきた。
例えば、何かのイベント(例えば、onClickなど)に反応してcomponentを追加したりしたいとき、
wicket:idのマークアップ先の初期値はすっからかんのはず。

なのに最初でも適当なLabelを追加しないと怒られる。
運用だと(確か?)怒られないはずだったけど、そういう問題じゃないよなぁ。
ignoreなんとかってオプションがあればいいなーってふと思った。
あって気づいてないだけかもしれないけど。

WebMarkupContainer wmc = new WebMarkupContainer("dpList");
wmc.add(new Label("name"));
wmc.add(new Label("number_of_classes"));
wmc.add(new Label("number_of_not_checked_classes"));
wmc.add(new Label("number_of_evaluations"));
wmc.add(new Label("number_of_not_checked_evaluations"));
wmc.add(new Label("sum_of_evaluations"));

ECサイトを2週間で作れ

と言われたので頑張ってみんなで作った。

土台から作るのは時間的に無理だったので、
パッケージを探してこれにたどり着いた。

EC-Cube
http://www.ec-cube.net/
即採用だったんですが、理由は、

  • 日本製(ローカライズが不要)
  • GPLライセンス
  • デザインがSmarty でしっかり分離されている
  • 目立たない部分もしっかり作り込まれている。

実際にいじりはじめてからも、
WIKIがしっかりしているので苦労しなかった。

テストとデザインを含めると少し納期を越えそうですが、まぁヨシとしようね。