[Catalyst] DELETE through REST and Jemplate
J. Shirley
jshirley at gmail.com
Mon Mar 30 16:03:29 BST 2009
On Mon, Mar 30, 2009 at 7:39 AM, Emmanuel Quevillon <tuco at pasteur.fr> wrote:
> J. Shirley wrote:
> > On Mon, Mar 30, 2009 at 7:24 AM, Emmanuel Quevillon <tuco at pasteur.fr
> > <mailto:tuco at pasteur.fr>> wrote:
> >
> > Hi,
> >
> > I am playing with REST and Jemplate from the great Tuts from JRock's
> > book.
> > However, I am facing a problem. I understand well how to retrieve
> > data from a REST url and playing Ajax with it, by a GET method.
> > However, I don't know how to change the method to DELETE from a
> > simple link like:
> >
> > test.js contains:
> >
> > function remove_item(id){
> > Jemplate.process('test.tt2',
> > '[% Catalyst.uri_for("/rest/item/") %]'+id,
> > '#_item');
> > }
> >
> > template test.tt2:
> >
> > <a href=3D"#" onclick=3D"remove_item('[% item.id <http://item.id> %=
]');
> > return
> > false;">Remove item</a>
> >
> > If I code my template like this, it just do a GET request.
> > How can I introduce DELETE method to tell REST API to delete my
> > item id?
> >
> > Sorry if my question seems stupid, I am a bit lost.
> > If anybody has any clue, very welcome.
> >
> > Regards
> > --
> > -------------------------
> > Emmanuel Quevillon
> > Biological Software and Databases Group
> > Institut Pasteur
> > +33 1 44 38 95 98
> > tuco at_ pasteur dot fr
> > -------------------------
> >
> >
> > You didn't include your remove_item method. Can you post that?
> >
> > -J
>
> It is very basic, it took code from Jrock's book :)
>
> sub item_DELETE {
>
> my($self, $c) =3D @_;
>
> my $id =3D $c->stash()->{id};
>
> my $set =3D $c->model('MyAppDB::Item')->find({id =3D> $id});
>
> if($set){
> $self->status_ok($c,
> entity =3D> mk_entity($set));
> $set->delete();
> }
> else{
> $self->status_not_found($c,
> message =3D> "Item not found");
> }
> }
>
> --
>
>
I meant the javascript method, not the Catalyst method.
There should be a "function remove_item()" somewhere, as it doesn't seem
part of Jemplate. Also, you probably want to use jQuery or something more
robust for your asynchronous calls. Jemplate docs don't even seem to have a
delete method.
-J
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.scsys.co.uk/pipermail/catalyst/attachments/20090330/7b583=
938/attachment.htm
More information about the Catalyst
mailing list