User:
Pass:
Keep:   
Xoops Cube Project
XOOPS Cube Project Site
Powered by Google


Powered by XOOPS Cube Legacy 2.1.8
PukiWikiMod 1.5.1
WordPress Module 0.6.0 Alpha
XoopsTableObjectについて 投稿者: fugafuga 投稿日:2005/08/25(Thu) 13:50 No.117  
いつもお世話になっております。fugafugaです。

WordPressモジュールに同包されているXoopsTableObjectクラスが非常に使い勝手がよさそうなので自作モジュールで使用させていただきたいのですが、再配布に問題ありますでしょうか?

なお実際に使ってみていくつか不具合がありましたのでご報告させていただきます。

1) function get の332行目に".="が"="になっているTypoがありました
$whereStr = $whereAnd . "`$v` = ";


2) function getObjects の625行目が無条件で常にarray()になっているので
複合キーのテーブルで戻り値が期待値より少なくなっています。
$r[$myrow[$ids[$i]]] = array();

最適解かどうかはわかりませんが以下のようにして期待通りの結果が得られました。

if (!isset($r[$myrow[$ids[$i]]])) {
    $r[$myrow[$ids[$i]]] = array();
}


3) function renderEditForm の122行目はgetVar($key,'e')でないかと思います。

if (!$this->isNew()) {
	$formElement->setValue($this->getVar($key));
}


Re: XoopsTableObjectについて 投稿者: のぶのぶ 投稿日:2005/08/25(Thu) 16:15 No.119  

引用:

WordPressモジュールに同包されているXoopsTableObjectクラスが非常に使い勝手がよさそうなので自作モジュールで使用させていただきたいのですが、再配布に問題ありますでしょうか?

XOOPSやWordPressと同様にGPLライセンスになっていますので、再配布は問題ありません。
テーブル用の汎用Objectクラスは本家のXOOPS2.2では別途用意されており、
日本のXOOPS Cubeでも、2.2.xをメドに用意をする予定ではありますが、
XoopsTableObjectがお気に召せば幸いです。
この様なテーブルとの連携の取組では、minahitoさんのexFramework及びexToolsが
フレームワーク的にはかっちりとした作りになっていますが、XoopsTableObjectには
XoopsTableObjectなりの手軽さがあると思っています。

引用:

なお実際に使ってみていくつか不具合がありましたのでご報告させていただきます。

1) function get の332行目に".="が"="になっているTypoがありました
$whereStr = $whereAnd . "`$v` = ";


2) function getObjects の625行目が無条件で常にarray()になっているので
複合キーのテーブルで戻り値が期待値より少なくなっています。
$r[$myrow[$ids[$i]]] = array();

最適解かどうかはわかりませんが以下のようにして期待通りの結果が得られました。

if (!isset($r[$myrow[$ids[$i]]])) {
    $r[$myrow[$ids[$i]]] = array();
}


3) function renderEditForm の122行目はgetVar($key,'e')でないかと思います。

if (!$this->isNew()) {
	$formElement->setValue($this->getVar($key));
}


御報告ありがとうございます。
複合キーの部分やxoopsFormとの連携部分については、
のぶのぶXOOPS - XOOPS用汎用TebleObject-作業記録/2004-05-11-PukiWiki
の頃に試作して依頼あまり変更していないので、Bugが残っていたようですね。
複合キーについてはWPでも使用しているのですが、WPの場合はちょっと特殊な使い方だったので不具合が発現していなかったんですね。
WordPressの方にも上記指摘箇所を修正させていただきます。


NO: PASS:

このプログラムは KENT 氏の yybbs を xoops(PHP) に移植したものです
- KENT -