Hatena::Groupasakura

浅倉卓司@blog風味? このページをアンテナに追加 RSSフィード

Error : RSSが取得できませんでした。

2005-03-01(Tue)

Class::DBI::View::HavingとClass::DBI::Plugin::Iterator

|  Class::DBI::View::HavingとClass::DBI::Plugin::Iterator - 浅倉卓司@blog風味? を含むブックマーク  Class::DBI::View::HavingとClass::DBI::Plugin::Iterator - 浅倉卓司@blog風味? のブックマークコメント

 併用するとうまく動きませんでした。

 調べてみると、Class::DBI::View::Havingに下記のパッチをあてると問題ない模様。

 ついでにClass::DBI::Plugin::Iteratorも微調整

--- Class/DBI/View/Having.pm        Fri Feb 13 15:16:43 2004
+++ Class/DBI/View/Having.pm        Tue Mar 01 12:42:44 2005
@@ -12,8 +12,7 @@
     *{"$class\::retrieve_from_sql"} =  sub {
        my($real_class, $where, @vals) = @_;
        my $sth = $real_class->sql_ViewHaving("HAVING $where");
-       $sth->execute(@vals);
-       return $real_class->sth_to_objects($sth);
+       return $real_class->sth_to_objects($sth, \@vals);
     };
     *{"$class\::retrieve_all"} = sub {
        my $real_class = shift;

トラックバック - http://asakura.g.hatena.ne.jp/asakura-t/20050301

2005-02-28(Mon)

まかまかさん、ありがとうございました。

| 18:42 |  まかまかさん、ありがとうございました。 - 浅倉卓司@blog風味? を含むブックマーク  まかまかさん、ありがとうございました。 - 浅倉卓司@blog風味? のブックマークコメント

 動作検証をお願いした形になってしまってすみません。

 似たようなものを実装していたみたいだったので、つい……。

 importルーチンでドライバの判定をされていて(私も最初そうしたのですが)これだとアプリケーションベースクラスでPlugin::Iteratorを宣言して、継承クラスではPlugin::Iteratorを呼ばずに済ませようとするとエラーになります(db_Mainが呼び出せないから)。

Class::DBI::Plugin::Iterator 0.10

 あれ、テストした時にエラーが出なかった気がするけど? と思ってテストに使っているスクリプトを確認したところ、Class::DBI::AutoLoaderを使ってました(苦笑)。


 私は根が「可能な限り現状維持で汎用的に」(?)をモットーにしているもので、ベースクラスで一回だけPlugin::Iteratorを呼んで済ませたかったのです。

 これは僕もそうしてますので、さっそく修正しました(まかまかさんのパッチをそのまま使ってます)。

トラックバック - http://asakura.g.hatena.ne.jp/asakura-t/20050228

2005-02-27(Sun)

Class::DBI::Plugin::Iteratorの0.10を作ってみた。

| 18:42 |  Class::DBI::Plugin::Iteratorの0.10を作ってみた。 - 浅倉卓司@blog風味? を含むブックマーク  Class::DBI::Plugin::Iteratorの0.10を作ってみた。 - 浅倉卓司@blog風味? のブックマークコメント

 MySQLの時は自動的にClass::DBI::Plugin::Iterator::mysqlを使い、それ以外の時はClass::DBI::Plugin::Iterator::subqueryを使うように変更しました。

 サブクエリが使えない場合はHAVINGを使い、HAVINGも使えない場合はオリジナルのIteratorを使うようようなってます。たぶん。



 というわけでいかがでしょう?>まかまかさん

 CPANに上げるのはまかまかさん待ちということで(笑)。

トラックバック - http://asakura.g.hatena.ne.jp/asakura-t/20050227
2004 | 01 | 02 | 03 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2005 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 08 | 09 | 10 | 11 | 12 |
2007 | 02 | 03 | 04 | 05 | 06 | 07 | 10 | 11 | 12 |
2008 | 02 | 03 | 04 | 06 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2012 | 02 | 03 | 04 | 05 | 07 | 08 | 10 | 11 | 12 |
2013 | 01 | 05 | 07 |
2014 | 01 | 02 |
2016 | 01 |
2017 | 01 | 05 |
Error : RSSが取得できませんでした。