読者です 読者をやめる 読者になる 読者になる

febc技術メモ

Japanese version of http://febc-yamamoto.hatenablog.com

JavaScriptMVCでモデルのCRUD操作をPOSTで行う方法

今日もJavaScriptMVCの小ネタです。

 

<今日のお題>

1:モデルの基本的なCRUD操作方法

2:POSTでリクエストする方法

 

  では早速本題に入ります。

 

1:モデルの基本的なCRUD操作

 まずはジェネレータで作ったモデルを見てみましょう。

 

ジェネレータで作ったモデルには既にCRUD操作用のメソッドが用意されています。

本家ドキュメントを見ると、それぞれのメソッドは以下のHTTPメソッドが使われます。

findAll  : GET

findOne : GET

create  : POST

update : PUT

destroy : DELETE

 

GETはなんか嫌だとか、PUTとかDELETEとか知らないよ、とか

様々な事情でPOSTでリクエストしたいことがあるかと思います。

そこで次のお題。

 

2:POSTでリクエストする方法

まずは更新系をPOSTにする場合。

この場合は簡単に対応できます。

updateとdestroyに指定されているURLにちょっと細工すればOK。

 

 

これで既存資産がPUT/DELETEに対応してなくても大丈夫ですね。

 

 

 

後は、JavaScriptMVCを使うアプリはそれなりの規模のアプリと思いますが、

規模が大きくなるにつれて、全リクエストで共通のパラメータを送ったり、

共通のエラー処理を行う必要が出てくることもあろうかと思います。

 

こんな場合はそれぞれのCRUDメソッドをオーバーライドしたり、

独自でリクエストを送信するメソッドを作ったりします。

この方法であれば取得系もPOSTを使うことが可能です。

この辺は改めて記事にします。ではまた次回。