Olhem ai: http://pastebin.com/dGdybYsT <http://pastebin.com/vLpkq3Uj>

Uso:

Colocar essa classe em um modulo ou no application e na definição de rotas:

Route::rest_set(HTTP_Request::GET, 'rest_products_list',  'api/products')
     ->defaults(array(
         'action'      => 'list',
         'controller'  => 'products'
     ));

Route::rest_set(HTTP_Request::PUT, 'rest_products_add',  'api/products')
     ->defaults(array(
         'action'      => 'add',
         'controller'  => 'products'
     ));

No controller products criar os métodos: action_get_list, action_put_add
para gerenciar as requisições. Se não quiserem o prefixo do método (put,
get, post e delete) é só remover o método defaults.


2012/7/25 felipe bastos <[email protected]>

> Vejam o respect/rest respect/relational e outros modulos do respect ..
>
> Ta sendo construido pelo alexandre gaigalas do phpbr
>
> E o controller pode vir como objeto
>
> App-get("rota", "NomeController");
>
> Por modulo, tlvz de pra integrar .. (respect/slim e outros)
> Em 25/07/2012 09:53, "felipe bastos" <[email protected]> escreveu:
>
> Sao os micro ou nano frameworks php ..
>>
>> Tem varios nesse estilo .. um deles, feito pela galera do symfony .. da
>> pra usar os mesmos componentes do symfony nele ..
>>
>> Eu criei em ko puro pq quero q a propria aplicacao funcione como api ..
>> e, toda a aplicacao roda via ajax ..
>>
>> Mas nada impede de criar outra aplicacao com slim so para api
>> Em 25/07/2012 09:45, "Waldson Patricio" <[email protected]>
>> escreveu:
>>
>>> Foi justamente isso que pensei. Estender o Route (RestRoute) e
>>> implementar esses métodos e usar a interface do Kohana mesmo:
>>>
>>> RestRoute::get('rota_id', 'api/products/<id>')->....
>>> RestRoute::post('rota_id', 'api/products/<id>')->....
>>> RestRoute::put('rota_id', 'api/products/<id>')->....
>>> RestRoute::delete('rota_id', 'api/products/<id>')->....
>>>
>>> e a função do controller (Que também terá um RestController) fazer as
>>> actions com prefixo do método:
>>>
>>> function action_get_products
>>>
>>> function action_put_products
>>>
>>>
>>> 2012/7/25 jose antoniel de lima Lima <[email protected]>
>>>
>>>> Tenho lindo sobre backbone js achei muito entereçante esse framework
>>>> agora achei esse Slim PHP e possivel configurar as rotas com ele da
>>>> seguinte maneira, achei bacana esse Slim talvez de para fazer algo com as
>>>> rotas do kohana aclopado do Slim, algo do tipo:
>>>>
>>>> Route::set('slim', array('Slim', 'route'));
>>>>
>>>> ai na função do Slim que executa a rota posso fazer retorna uma rota
>>>> com controller, action e id para que o kohana execute a ação, acho que isso
>>>> pode funcionar, vou ver quando iniciar o projeto e posto aki.
>>>>
>>>>
>>>>
>>>> //GET route
>>>> $app->get('/hello/:name', function ($name) {
>>>>     echo "Hello, $name";
>>>> });
>>>>
>>>> //POST route
>>>> $app->post('/person', function () {
>>>>     //Create new Person
>>>> });
>>>>
>>>> //PUT route
>>>> $app->put('/person/:id', function ($id) {
>>>>     //Update Person identified by $id
>>>> });
>>>>
>>>> //DELETE route
>>>> $app->delete('/person/:id', function ($id) {
>>>>     //Delete Person identified by $id
>>>> });
>>>>
>>>>
>>>>
>>>> --
>>>> Atenciosamente,
>>>> José Antoniel de Lima
>>>> Analista de Sistemas PHP5
>>>>
>>>>  --
>>>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
>>>> Php" dos Grupos do Google.
>>>> Para postar neste grupo, envie um e-mail para
>>>> [email protected].
>>>> Para cancelar a inscrição nesse grupo, envie um e-mail para
>>>> [email protected].
>>>> Para obter mais opções, visite esse grupo em
>>>> http://groups.google.com/group/kohana-php?hl=pt-BR.
>>>>
>>>
>>>  --
>>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
>>> Php" dos Grupos do Google.
>>> Para postar neste grupo, envie um e-mail para
>>> [email protected].
>>> Para cancelar a inscrição nesse grupo, envie um e-mail para
>>> [email protected].
>>> Para obter mais opções, visite esse grupo em
>>> http://groups.google.com/group/kohana-php?hl=pt-BR.
>>>
>>  --
> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
> Php" dos Grupos do Google.
> Para postar neste grupo, envie um e-mail para [email protected].
> Para cancelar a inscrição nesse grupo, envie um e-mail para
> [email protected].
> Para obter mais opções, visite esse grupo em
> http://groups.google.com/group/kohana-php?hl=pt-BR.
>

-- 
Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos 
Grupos do Google.
Para postar neste grupo, envie um e-mail para [email protected].
Para cancelar a inscrição nesse grupo, envie um e-mail para 
[email protected].
Para obter mais opções, visite esse grupo em 
http://groups.google.com/group/kohana-php?hl=pt-BR.

Responder a