MojoliciousアプリケーションをCGIで動かす時に、スタイルシートや外部JavaScriptファイル、画像など静的ファイルの扱いには注意が必要になる。 これはテンプレートでタグヘルパーを使った時、例えば <%= stylesheet '/css/style.css' %> とスタイルシートを読み込んだつもりだけど、これはスタイルシートを読み込むCGIを実行するのと同じ(スタイルシートのURLにリダイレクト処理するCGIとして実行される) 静的ファイルを呼び出す回数分のCGIが実行されることになるので、パフォーマンスも悪くなることは当然ながら、データベースの接続処理をstar […]
Apatana Studioで何かのプラグインを追加したあたりから起動時に以下のようなエラーが出るようになった。 エラー内容:"Sending Ping..." 中に内部エラーが発生しました。 org/apache/derby/iapi/error/ShutdownException ググッてみると、Apatana Usage をオフにするといいような発言があったので試してみる。 初期設定>一般>開始およびシャットダウン Aptanaを再起動してみるもエラーが出る。 で、すべてのチェックを外して起動してみた。 エラーは出なくなった。かわりに初期設定が出来なくなった...orz。 結局クリーンイ […]
configファイルの読み込み 設定ファイルを読み込む / Mojoliciousリファレンス - サンプルコードによるPerl入門 設定(コンフィグ)ファイルを読み込むにはMojolicious::Plugin::Configを利用します。 というように、Mojoliciousアプリで設定ファイルを使う事ができる。例えば etc/MyApp.conf を読み込むには以下のような感じ。 stash_keyはオプションで設定できる(デフォルトはconfig?) etc/MyApp.conf { # MyApp config # サービス名 SARVICE_NAME => 'hogehog […]
すぐ忘れるし、どこにあったか分からなくなるのでメモ。 Mojolicious - GitHubより引用 package MyApp; use Mojo::Base 'Mojolicious'; use DBIx::Custom; has dbi => sub { my $dbi = DBIx::Custom->connect(...); return $dbi; }; sub startup { my $self = shift; ### YOU MUST NOT CALL dbi() method in starup(). } リンク先にはBad Exampleもあるので参考に。
規格を利用していて、ある規格(長いものや重いものなど)の場合は別途送料となる場合の処理を書いてみる。 ただし無理やり実装。 動作 該当する規格分類の場合は送料を通常より1000円プラスする。 環境 EC-CUBE 2.4 PostgreSQL 段取り 各規格の分類は dtb_classcategory に格納されていて、classcategory_id というユニークな通し番号が振られている。 カートのセッションにもこの通し番号が格納されているようなので、こいつを使って判別することとする。 なので、適用する規格の分類を登録した後に、classcategory_id を調べなくてはならない。 工 […]
参考:EC-CUBEカスタマイズ - 商品詳細ページにテキスト入力欄を追加|ネットショップ構築&運営サポート - ビー・フレンド 例えば、ハンコの名前部分を入力してもらうとか、規格で管理できないほどの多量のサイズとかを入力してもらうようにできる。 参考ページの手順で導入してみたけれど、テキスト入力欄設定されていない商品をカートに入れることができない不具合があるみたい。あと、PostgreSQLの場合は、Viewを再生成する必要がある。 環境 EC-CUEB 2.4.4 PostgreSQL データベース編集 テキスト入力欄を表示するか否かを判別するフラグ 対象テーブル:dtb_products […]
Live Commerceを使うのにはZend Optimizerが必要なのでインストールする。 CentOS5.5(32bit) PHP 5.2.16 ダウンロード ダウンロード場所がわかりにくいので注意 ※Zend OptimizerをダウンロードするにはMyZendに登録する必要がある。 ゼンド・ジャパン株式会社 ダウンロード>Zend Guard>loader>linux>ZendOptimizer-3.x.x-linux-glibc23-xxx.tar.gz ※ xの部分はPHPのバージョンやOSによって異なる 当方の環境では ZendOptimizer-3.3.9-linux-gl […]
とあるスクリプトで最初の実行時には正常に動作するのだけれど、同一ページを再訪問(リロードではなく)した時に不具合が出た。 webkit系のブラウザで不具合が確認できたのだけれど、どうやらgetElementById()でnullが帰っている様子。 ググってみると同じような現象で悩んでいる人もいるみたい。DOM構築前だとnullが帰る事もあるのが原因のようだ。 onLoadイベントとかはjQuery使っているのなら簡単に実装できるのだけれど、純粋JSで書いているスクリプトだし、他所様に配信するスクリプトなので解決方法を探る。 jQuery使っているのなら、$.ready(function(){. […]
DBIx::Custom - search.cpan.org DBIx-Custom-0.1705 DBIx::Custom select メソッドの whereの項目を見ると様々な指定方法が出来ることが分かる。 注意する点はStringを渡す時。 where => "url = 'http://hoge.com/huga.cgi?key=value' ", 上のように条件に ? が含まれる場合、SQLの作成に失敗する。(DBIx::Custom::QueryBuilder::build_queryでかな?) ? がメタ文字として扱われるため?(\?とエスケープしてもダメ) Hashリフ […]
perlモジュールのバージョンを一発で調べられるコマンド $ pmvers DBIx::Cutom 0.168 cpanmがインストールしてあれば $ cpanm pmvers でインストールできます。 もうこんな事しなくていいんです。 perl -MDBI -e 'print $DBIx::Custom::VERSION'