[YMIR-289] _post_xxx()メソッドの戻り値をタイプセーフに Created: 2009-01-19  Updated: 2009-02-13  Resolved: 2009-02-03

Status: Closed
Project: Ymir
Component/s: ymir-core
Affects Version/s: 1.0.0
Fix Version/s: 1.0.2

Type: Improvement Priority: Major
Reporter: jflute Assignee: skirnir
Resolution: Fixed Votes: 0
Labels: None


 Description   

【概要】
StringではないYmirが提供する独自の型を
_post_xxx()の戻り値に定義して画面遷移が指定できるようする。

例えば、以下のような感じ:

public PostResult _post_xxx() {
    return Redirect.to(Bar.class);
}

【実現可能性】
PageクラスからHTMLが一意にならない可能性があるようなので、
よく吟味する必要がありそう。

【補足】
すぐにできる話ではないので、よく設計する必要がある。



 Comments   
Comment by skirnir [ 2009-02-13 ]

完了とします。

Comment by jflute [ 2009-02-04 ]

ありがとうございます。確認しました。
とても良くなりました。

@EndでResponseが戻り値のpostメソッドもOKでした。

Comment by skirnir [ 2009-02-03 ]

対処しました(r2737)。

ymir-fragment-utilityに変更が入りましたが、この中でymir-coreに新しく追加されたメソッドを使用しているため、ymir-fragment-utilityはymir-1.0.2以上との組み合わせで使うようにしてください。

Comment by jflute [ 2009-01-21 ]

ただ、こうかいてしまえばいいだけなので別にサポートしなくてもいいかもしれません。
Getパラメータの変数名とこっちの変数名が同じとは限らないし。

return Redirect.to(Bar.class, new String[]{"memberId", memberId});
Comment by jflute [ 2009-01-21 ]

なるほど、りょうかいです。
Classクラスで指定できるととてもバリューが高くなると思います。

あと、要設計かなと思っているのは、Getパラメータの取り扱いかなと。

return Redirect.to("/member/edit/input.html(memberId)");

こういうような書き方も現状できるかと思いますので、
この書き方の代替をどうするかなと。

Comment by skirnir [ 2009-01-21 ]

PostResultとして利用できる既存クラスとしてResponseクラスがあるので、実現する際にはResponseクラスのインスタンスを返却するようなRedirect.to()メソッド等を実現すればよさそうです。

あとはRedirect.to()の内部処理で「Pageクラス→HTMLのURL」の検索処理が書けるなら、ymir-coreに手を入れなくてもUtilityフラグメントの変更だけで対応ができそうです。

Comment by jflute [ 2009-01-19 ]

> PageクラスからHTMLが一意にならない
レアケースであれば、例外ちゃんと発生するようにだけなっていれば、
特に問題ないかと思います。(いざとなればStringで)

Generated at Sat Apr 20 07:02:16 JST 2024 using Jira 9.15.0#9150000-sha1:9ead8528714127d8cfabf2446010d7e62c0a195c.