Как я могу использовать Catalyst и связывание uri с интерфейсом REST?

Я ожидаю получить uri типа

/user/*/account/*

У меня есть пользовательская функция, определенная как

sub user  :Path('/user') :PathPart('') :ActionClass('REST' ) {}

, затем

sub user_GET :PathPart('user') Chained('/') CaptureArgs(1) {
    #do stuff

}

Для учетных записей я определяю их аналогично.

 sub account :Path('/account') :PathPart('') :ActionClass('REST') {}

 sub account_GET :PathPart('account') Chained('user_GET') Args(1) {
     #do stuff
 }

Итак, проблема в том, что я установил Chained in account_GET на 'user_GET', сервер отладка показывает, что путь установлен:

[debug] Loaded Chained actions:
.-----------------------------+--------------------------------------.
| Path Spec                   | Private                              |
+-----------------------------+--------------------------------------+
| /user/*/account/*           | /mcp/user_GET (1)                    |
|                             | => /mcp/account_GET                  |
'-----------------------------+--------------------------------------'

Когда я устанавливаю Chained in account_GET на 'user', отладка сервера показывает:

[debug] Unattached Chained actions:

[debug] Unattached Chained actions:

.-------------------------------------+--------------------------------------.
| Private                             | Missing parent                       |
+-------------------------------------+--------------------------------------+
| /mcp/account_GET                    | /mcp/user                            |
'-------------------------------------+--------------------------------------'

Проблема в том, что явно не настраивается последний, а первый - возвращая, что не было найдено.

Итак, проблема в том, что если я звоню / user / 12345 / account / 23456, как мне получить этот путь? установлен правильно, когда то, что кажется очевидным путем, Chained ('user'), не установлен, а менее очевидный путь, Chained ('user_GET'), просто не работает?

5
задан jmcneirney 13 December 2011 в 17:43
поделиться