Hatena::Groupcatalyst

LAPISLAZULI HILL#Catalyst このページをアンテナに追加 RSSフィード

2007-01-04

[][]Chain#01 Chain#01 - LAPISLAZULI HILL#Catalyst を含むブックマーク はてなブックマーク - Chain#01 - LAPISLAZULI HILL#Catalyst Chain#01 - LAPISLAZULI HILL#Catalyst のブックマークコメント

役に立たないメモ.

なんかよくわからないのでいろいろやってみる.あとでまとめられたらイイナ

[参考]

まず試して見る(/*/hoge/*, /*/hoge/*/*)

ゆーすけべー日記をまず参考に

sub language : Chained PathPart('') CaptureArgs(1) {
    my ($self, $c, $language) = @_;
    $c->stash->{language} = $language;
}

sub show_hoge : Chained('language') PathPart('hoge') Args(1) {
    my ($self, $c, $args) = @_;
    $c->response->body( $c->stash->{language} . ": hoge1 : $args");
}

sub show_hoge2 : Chained('language') PathPart('hoge') Args(2) {
    my ($self, $c, $arg1, $arg2) = @_;
    $c->response->body( $c->stash->{language} . ": hoge2 : $arg1 : $arg2");
}
[debug] Loaded Chained actions:
.-------------------------------------+--------------------------------------.
| Path Spec                           | Private                              |
+-------------------------------------+--------------------------------------+
| /*/hoge/*                           | /language (1)                        |
|                                     | => /show_hoge1                       |
| /*/hoge/*/*                         | /language (1)                        |
|                                     | => /show_hoge2                       |
'-------------------------------------+--------------------------------------'

hogeのあとのargsが数によってそれぞれ対応するメソッドが呼び出された

http://localhost:3000/en/hoge/12345

en: hoge1 : 12345

http://localhost:3000/en/hoge/12345/67890

en: hoge2 : 12345 : 67890
トラックバック - http://catalyst.g.hatena.ne.jp/lapis25/20070104