[Seasar-user:16040] Re: [DBFlute]rowspanを使用した一覧のページングは可能でしょうか
kubo
[E-MAIL ADDRESS DELETED]
2008年 10月 17日 (金) 17:11:20 JST
久保(jflute)です。
>> ページングの軸にしたい「ABC」は、
>> DBの検索結果上はユニークでしょうか?
> はい、ユニークです。
おお、了解です。
A. 検索の基点テーブルが画面上のページングの基点になる場合
B. 検索の基点テーブルと画面上のページングの基点が異なる場合
と二つの状況があるのですが、
「DBの検索結果上はユニーク = 基点テーブル」と考えていいので、
今回の状況は上記の「A」と考えてよろしいですか?
で、問題としているのは、取得したPagingResultBeanの
計算結果を画面上でそのまま利用したいけど、
rowspan周りの解決があるため、Teedaでの展開が難しく
どうしたら良いか?ということであってます?
確認が長く申し訳ありませんが、
状況が「A」なのか「B」なのかがハッキリしなかったため、
確認をさせて頂きました。
2008/10/17 <[E-MAIL ADDRESS DELETED]>:
> 久保さん
>
>> ページングの軸にしたい「ABC」は、
>> DBの検索結果上はユニークでしょうか?
> はい、ユニークです。
> 「ABC」のPKで取得します。
>
> 海野
>
>
> 引用 kubo <[E-MAIL ADDRESS DELETED]>:
>
>> 久保(jflute)です。
>>
>> すいません、質問を変えます。
>>
>> ページングの軸にしたい「ABC」は、
>> DBの検索結果上はユニークでしょうか?
>>
>> ちなみに基点と考えるテーブルから親テーブルが
>> あるか無いかはあまり関係はありません。
>> 子テーブルがあって、それをどのように取得しているか
>> が重要なポイントになります。
>>
>>
>> 2008/10/17 <[E-MAIL ADDRESS DELETED]>:
>> > 久保さん
>> >
>> >> 多重度は「ABC:DEF != 1:n」ということですね!?
>> > そうですね。「ABC:DEF =
>> 1:n」に限らないということです。
>> >
>> >> 「ABC」や「DEF」の多重度はどうなります?
>> >> (またその他GHIやJKLとかも)
>> > 先ほど大家族と書いたように、親も子もいます。
>> > その親に紐づいた子もいます。
>> >
>> >
>> うーん、、ER図をお見せできないのがもどかしいです。。
>> > 海野
>> >
>> >
>> > 引用 kubo <[E-MAIL ADDRESS DELETED]>:
>> >
>> >> 久保(jflute)です。
>> >>
>> >> >> 多重度は「ABC:DEF = 1:n」
>> >> >> だと思いましたが合ってます?
>> >> > 違います。説明がヘタですみません。。。
>> >>
>> >> あ、ごめんなさい。
>> >> 「違います」ということなので、
>> >> 多重度は「ABC:DEF != 1:n」ということですね!?
>> >>
>> >> >
>> >>
>> 「ABC」が基点になるというのは意識が同じようですね。
>> >> と言っても、多重度の認識が違うので無意味でした。
>> >>
>> >> 「ABC」や「DEF」の多重度はどうなります?
>> >> (またその他GHIやJKLとかも)
>> >>
>> >> #
>> >> #
>> >>
>> 多重度が何なのかによって全然話が変わってくるので...
>> >> #
>> >>
>> >> 2008/10/17 kubo <[E-MAIL ADDRESS DELETED]>:
>> >> > 久保(jflute)です。
>> >> >
>> >> > 了解です。
>> >> >
>> >>
>> 「ABC」が基点になるというのは意識が同じようですね。
>> >> >
>> >> >> 「GHI」「JKL」などいろんなテーブルを連結して
>> >> >
>> >>
>> これらは「ABC」とは「1:n」関係(子供)のテーブルになります?
>> >> > それとも「n:1」関係(親)でしょうか?
>> >> >
>> >> > 2008/10/17 <[E-MAIL ADDRESS DELETED]>:
>> >> >> 久保さん
>> >> >>
>> >> >>> 多重度は「ABC:DEF = 1:n」
>> >> >>> だと思いましたが合ってます?
>> >> >> 違います。説明がヘタですみません。。。
>> >> >>
>> >> >> 私も基点は「ABC」で考えてます。
>> >> >> で、「DEF」だけでなく、「ABC」と関連づいた
>> >> >> 「GHI」「JKL」などいろんなテーブルを連結して、
>> >> >>
>> >>
>> 情報として「ABC」を基点とした1行のレコードにします。
>> >> >> その1行を、Teeda(HTML)側で、rowspan指定して
>> >> >> 2段や3段で表示したいです。
>> >> >>
>> >> >> それが出来れば、DBFluteのPagingResultBeanがそのまま
>> >> >> 利用できると思っています。
>> >> >>
>> >>
>> (その2段や3段に表示したものを、ページング処理としては
>> >> >> 1行で扱えると。)
>> >> >>
>> >> >>
>> >>
>> (最初のサンプルは、このようなことが出来ないと思っていまして
>> >> >> 「Teedaのrowspanを使った表示では、各行の
>> >> >> rowspanの数の合計数ぶんのListが必要」
>> >> >> という前提でつくったものです。このつくりだと、
>> >> >>
>> >>
>> PagingResultBeanがそのままでは利用できないと思った次第です。)
>> >> >>
>> >> >> いかがでしょう、伝わりましたでしょうか。
>> >> >> 宜しくお願い致します。
>> >> >> 海野
>> >> >>
>> >> >>
>> >> >>
>> >> >> 引用 kubo <[E-MAIL ADDRESS DELETED]>:
>> >> >>
>> >> >>> 久保(jflute)です。
>> >> >>>
>> >> >>>
>> >>
>> 海野さん、ちょっと意識合わせをさらにさせて下さい。
>> >> >>>
>> >> >>> >
>> >>
>> DBFluteでは、ページングはPagingResultBeanを使いますよね。
>> >> >>> >
>> >> >>>
>> >>
>> PagingResultBeanのリストの1要素が、ページングでの1件です。
>> >> >>> > (ここまで合ってますか?)
>> >> >>>
>> >> >>> 合ってます。
>> >> >>>
>> >> >>> >
>> >> >>>
>> >>
>> ですが、表示では、「1」「2」がそれぞれrowspan=2なので、
>> >> >>> > 見た目は2行です。なので、Listは4件なんだけど
>> >> >>> >
>> >> >>>
>> >>
>> 表示上のテーブルを正として2件としてページングがしたい
>> >> >>> > というのが要件です。
>> >> >>>
>> >> >>> ここですね。
>> >> >>>
>> >>
>> 自分がイメージしたので、「1」「2」の粒度に相当する
>> >> >>> テーブルがあるということなので、
>> >> >>>
>> >>
>> 例えば、「1、2」に相当する粒度のテーブルを「ABC」
>> >> >>> 「aaa、bbb」に相当する粒度のテーブルを「DEF」
>> >> >>> として、
>> >> >>> 多重度は「ABC:DEF = 1:n」
>> >> >>> だと思いましたが合ってます?
>> >> >>> (ここが合ってないと話が食い違うので)
>> >> >>>
>> >> >>> もし、上記がYESならば、
>> >> >>> 海野さんは検索の基点テーブルは「DEF」と
>> >> >>>
>> お考えのようですが、自分は基点テーブルは「ABC」で
>> >> >>> いいんじゃないかと考えた次第です。
>> >> >>>
>> >> >>> 2008/10/17 <[E-MAIL ADDRESS DELETED]>:
>> >> >>> > 久保さん
>> >> >>> >
>> >> >>> > ご回答ありがとうございます。
>> >> >>> >
>> >> >>> >>
>> 想像していますが、意識合っていますでしょうか?
>> >> >>> >
>> >> >>> >
>> >> >>>
>> >>
>> ちょっと微妙なので、もう少し説明&確認させてください。
>> >> >>> >
>> >> >>> >
>> >>
>> DBFluteでは、ページングはPagingResultBeanを使いますよね。
>> >> >>> >
>> >> >>>
>> >>
>> PagingResultBeanのリストの1要素が、ページングでの1件です。
>> >> >>> > (ここまで合ってますか?)
>> >> >>> >
>> >> >>> >
>> >> 一方で、HTMLは、trタグ1つがテーブルでの1行です。
>> >> >>> >
>> >> >>>
>> >>
>> Teeda(の話です。すみません、言ってませんでしたね(汗))では、
>> >> >>> > 行の繰り返しはtbodyタグに~ItemsというIdを振って
>> >> >>> >
>> >> >>>
>> >>
>> Pageクラスのリストの要素数ぶん、trタグを出力しますよね。
>> >> >>> >
>> >> >>> >
>> >> >>>
>> >>
>> そこで、先ほどお送りしたサンプルでご説明すると、、
>> >> >>> >
>> >> >>> >
>> >> >>>
>> >>
>> ForeachNestPageクラスで作成しているListの要素は4つです。
>> >> >>> > このListは、DBFluteで検索した結果のPagingResultBean
>> >> >>> > を格納すると考えてください。
>> >> >>> >
>> >> >>> >
>> >> >>>
>> >>
>> ですが、表示では、「1」「2」がそれぞれrowspan=2なので、
>> >> >>> > 見た目は2行です。なので、Listは4件なんだけど
>> >> >>> >
>> >> >>>
>> >>
>> 表示上のテーブルを正として2件としてページングがしたい
>> >> >>> > というのが要件です。
>> >> >>> >
>> >> >>> > ここまでが私が考えついた方法です。
>> >> >>> > これは、「Teedaのrowspanを使った表示では、各行の
>> >> >>> >
>> >>
>> rowspanの数の合計数ぶんのListが必要」という前提です。
>> >> >>> >
>> >> >>> > もし、「rowspanする単位で1行」という扱いで
>> >> >>> > DBFluteでは検索しておいて、それをTeeda側で
>> >> >>> >
>> >> >>>
>> >>
>> 適切にrowspan指定する方法があれば、それでもかまわないのですが、、
>> >> >>> >
>> >> >>> >
>> >> >>>
>> >>
>> TeedaとDBFluteのどちらの件として質問すべきか迷ったのですが
>> >> >>> >
>> >> >>>
>> >>
>> やりたいことは「ページング」であったため、DBFlute扱いで
>> >> >>> > 質問させていただいた次第です。
>> >> >>> > でも、Teedaの質問とするべきかもしれませんね。
>> >> >>> >
>> >> >>> >>
>> >> >>>
>> >>
>> オブジェクトの階層構造をHTML上で要件通りの展開することに、
>> >> >>> >>
>> >> >>>
>> >>
>> PagingResultBeanだろうがListだろうかはあまり関係ないはずです。
>> >> >>> > なるほど。。その通りですね。
>> >> >>> >
>> >> >>> >
>> >> >>>
>> >>
>> 階層構造を展開するのはTeedaのネストしたループでいけるのかな
>> >> >>> >
>> >> >>>
>> >>
>> と思いますが、今回の場合、階層構造のないオブジェクトを
>> >> >>> >
>> >> >>>
>> >>
>> HTMLで階層構造のように(rowspan)表示するという感じです。
>> >> >>> >
>> >> >>> > ズバッと簡潔に質問できず恐縮です。
>> >> >>> >
>> >> 見当つく範囲で結構ですので、宜しくお願いします。
>> >> >>> > 海野
>> >> >>> >
>> >> >>> >
>> >> >>> > 引用 kubo <[E-MAIL ADDRESS DELETED]>:
>> >> >>> >
>> >> >>> >> 久保(jflute)です。
>> >> >>> >>
>> >> >>> >> >>
>> >> >>>
>> >>
>> 例の「1,2」に相当する粒度のレコードを持つテーブルは
>> >> >>> >> >> 存在しないでしょうか?
>> >> >>> >> > 存在します。
>> >> >>> >> 了解です。ありがとうございます。
>> >> >>> >>
>> >> >>> >> ならば、検索に関しては以下のような方法を
>> >> >>> >>
>> 想像していますが、意識合っていますでしょうか?
>> >> >>> >>
>> >> >>> >>
>> >> >>>
>> >>
>> 例えば、「1、2」に相当する粒度のテーブルを「ABC」
>> >> >>> >> 「aaa、bbb」に相当する粒度のテーブルを「DEF」
>> >> >>> >> として、
>> >> >>> >> 「ABC」のリストを普通にselectPage()で取得して、
>> >> >>> >> その直後に「DEF」をbhv.loadDef(abcList, new
>> >> >>> >> Xxx(){});で取得し、
>> >> >>> >>
>> >> >>>
>> >>
>> オブジェクトの階層構造とHTML上の階層構造を同じにする。
>> >> >>> >>
>> >> >>> >> >
>> >> >>>
>> >>
>> 添付のような感じで実装する方法しか思いつかなかったので
>> >> >>> >>
>> >> >>> >> DBFluteの検索部分の実装がなかったので、
>> >> >>> >> どちらかと言うと今回の質問内容は、
>> >> >>> >>
>> >> Teeda(でいいんですよね?)でオブジェクトの階層構造を
>> >> >>> >> うまく解決して、TDタグのrowspan属性を利用して
>> >> >>> >> テーブルの見映えを良くする方法は?
>> >> >>> >> って質問になりますでしょうか?
>> >> >>> >>
>> >> >>> >> ちなみに
>> >> >>> >>
>> >> >>>
>> >>
>> オブジェクトの階層構造をHTML上で要件通りの展開することに、
>> >> >>> >>
>> >> >>>
>> >>
>> PagingResultBeanだろうがListだろうかはあまり関係ないはずです。
>> >> >>> >>
>> >> >>> >>
>> >> >>> >> 2008/10/17 <[E-MAIL ADDRESS DELETED]>:
>> >> >>> >> > 久保さん
>> >> >>> >> >
>> >> >>> >> > いつもお世話になってます。
>> >> >>> >> >
>> >> >>> >> >>
>> >> >>>
>> >>
>> 例の「1,2」に相当する粒度のレコードを持つテーブルは
>> >> >>> >> >> 存在しないでしょうか?
>> >> >>> >> > 存在します。
>> >> >>> >> >
>> >> >>> >> >
>> >> >>>
>> >>
>> 添付のような感じで実装する方法しか思いつかなかったので
>> >> >>> >> >
>> >> >>>
>> >>
>> Paging機能はそのまま使えないかなー、と思った次第です。
>> >> >>> >> >
>> >> >>> >> > どうぞ宜しくお願いします。
>> >> >>> >> > 海野
>> >> >>> >> >
>> >> >>> >> >
>> >> >>> >> > 引用 kubo <[E-MAIL ADDRESS DELETED]>:
>> >> >>> >> >
>> >> >>> >> >> 久保(jflute)です。
>> >> >>> >> >>
>> >> >>> >> >> 海野さん、こんにちは
>> >> >>> >> >> まず確認をさせてください。
>> >> >>> >> >>
>> >> >>> >> >>
>> >> >>> >>
>> >> >>>
>> >>
>> 取得したレコードを何かしらの基準でグループ分けして扱う感じでしょうか?
>> >> >>> >> >>
>> >> >>> >> >>
>> >> >>>
>> >>
>> 例の「1,2」に相当する粒度のレコードを持つテーブルは
>> >> >>> >> >> 存在しないでしょうか?
>> >> >>> >> >>
>> >> >>> >> >> 2008/10/14 <[E-MAIL ADDRESS DELETED]>:
>> >> >>> >> >> > 海野です。
>> >> >>> >> >> > いつもお世話になっております。
>> >> >>> >> >> >
>> >> >>> >> >> >
>> >> >>> >> >>
>> >> >>> >>
>> >> >>>
>> >>
>> HTMLのテーブルのTDタグにrowspan属性を使用した一覧表示で、
>> >> >>> >> >> >
>> >> >>>
>> >>
>> DBFluteのページング機能を利用することは可能でしょうか。
>> >> >>> >> >> >
>> >> >>> >> >> > 例)
>> >> >>> >> >> > --------------
>> >> >>> >> >> > | aaa
>> >> >>> >> >> > 1 |--------
>> >> >>> >> >> > | bbb
>> >> >>> >> >> > --------------
>> >> >>> >> >> > | ccc
>> >> >>> >> >> > |--------
>> >> >>> >> >> > 2 | ddd
>> >> >>> >> >> > |--------
>> >> >>> >> >> > | bbb
>> >> >>> >> >> > --------------
>> >> >>> >> >> >
>> >> >>> >> >>
>> >> >>> >>
>> >> >>>
>> >>
>> この場合、2行とカウントしてページング機能が利用できると嬉しいです。
>> >> >>> >> >> >
>> >> >>> >> >> > 宜しくお願い致します。
>> >> >>> >> >> >
>> >> >>> >> >> > _______________________________________________
>> >> >>> >> >> > Seasar-user mailing list
>> >> >>> >> >> > [E-MAIL ADDRESS DELETED]
>> >> >>> >> >> > https://ml.seasar.org/mailman/listinfo/seasar-user
>> >> >>> >> >> >
>> >> >>> >> >> _______________________________________________
>> >> >>> >> >> Seasar-user mailing list
>> >> >>> >> >> [E-MAIL ADDRESS DELETED]
>> >> >>> >> >> https://ml.seasar.org/mailman/listinfo/seasar-user
>> >> >>> >> >>
>> >> >>> >> >
>> >> >>> >> >
>> >> >>> >> >
>> >> >>> >> > _______________________________________________
>> >> >>> >> > Seasar-user mailing list
>> >> >>> >> > [E-MAIL ADDRESS DELETED]
>> >> >>> >> > https://ml.seasar.org/mailman/listinfo/seasar-user
>> >> >>> >> >
>> >> >>> >> >
>> >> >>> >> _______________________________________________
>> >> >>> >> Seasar-user mailing list
>> >> >>> >> [E-MAIL ADDRESS DELETED]
>> >> >>> >> https://ml.seasar.org/mailman/listinfo/seasar-user
>> >> >>> >>
>> >> >>> >
>> >> >>> >
>> >> >>> > _______________________________________________
>> >> >>> > Seasar-user mailing list
>> >> >>> > [E-MAIL ADDRESS DELETED]
>> >> >>> > https://ml.seasar.org/mailman/listinfo/seasar-user
>> >> >>> >
>> >> >>> _______________________________________________
>> >> >>> Seasar-user mailing list
>> >> >>> [E-MAIL ADDRESS DELETED]
>> >> >>> https://ml.seasar.org/mailman/listinfo/seasar-user
>> >> >>>
>> >> >>
>> >> >>
>> >> >> _______________________________________________
>> >> >> Seasar-user mailing list
>> >> >> [E-MAIL ADDRESS DELETED]
>> >> >> https://ml.seasar.org/mailman/listinfo/seasar-user
>> >> >>
>> >> >
>> >> _______________________________________________
>> >> Seasar-user mailing list
>> >> [E-MAIL ADDRESS DELETED]
>> >> https://ml.seasar.org/mailman/listinfo/seasar-user
>> >>
>> >
>> >
>> > _______________________________________________
>> > Seasar-user mailing list
>> > [E-MAIL ADDRESS DELETED]
>> > https://ml.seasar.org/mailman/listinfo/seasar-user
>> >
>> _______________________________________________
>> Seasar-user mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>
>
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>
Seasar-user メーリングリストの案内