2012-05-25 10 views
5

私は基本的なソーシャルネットワーキングのコンセプトを持っています:Friend Requests。Backbone.Js destroy()でデータを送信する

各フレンドリクエストは受け入れられるか、または拒否されます。いずれかの操作でフレンドリクエストがコレクションから削除され、サーバーから削除されます。

model.destroy()を使用してサーバーにDELETEリクエストを発行し、FriendRequestsコレクションからアイテムを削除することができます。しかし、リクエストが受け入れられたか拒否されたかについて、サーバーに追加のデータを送信する必要があります。 ?accepted=true|false

Destroy()と一緒に追加のデータを送信するにはどうすればよいですか、それとも間違っているのですか?

+0

サウンドは、2つの異なる操作のように聞こえます。更新と削除です。 – kinakuta

+0

友人のリクエストを更新する必要はありません。受け入れられたか拒否されたかによって異なるアクションを実行する必要があります。 – reach4thelasers

+0

わかりましたが、これは単なる基本的な操作です - 削除は追加情報を伝えません削除が発生したときにロジックを実行できるように状態を更新する必要があるようです。 – kinakuta

答えて

2

これは標準のDELETEではない@kinakutaに同意します。 PUTを/friend-request/42/acceptまたは/friend-request/42/declineにすることを検討してください。もう1つのオプションは標準的な更新/ PUTを行うことですが、更新中にacceptedフラグが指定されている場合は、サーバー上で適切な処置を取ってください。また、フレンドリクエストが実際に削除されないが、「ステータス」属性が適切なライフサイクル値に変更されているサーバーサイドデータベースレコードに対して「ソフト削除」を実装することもできます。 「保留中」、「拒否」、「承諾済み」などのうちの1つである可能性があります。要求が受け入れられたときのタイムスタンプのような追加のメタデータを保存したい場合があります。レコードを削除すると、そのメタデータを保存する便利な場所はありません。

+0

良い答え、ありがとう、私はあなたの助言に従うつもりです。 – reach4thelasers

+1

これは良いコメントでしたが、答えはありませんでした。実際の質問に答えなかった。たとえOPがコーディングの面で適切ではなかったとしても。 –