ヘビークライアントアプリで少し遊んでいます。
このモデルがあると想像してください:
class Category(models.Model):
name = models.CharField(max_length=30)
color = models.CharField(max_length=9)
ノックアウトjsを使用しています(ただし、これは重要ではないと思います)。カテゴリのリスト (observableArray) があり、新しいカテゴリを作成したいと考えています。
新しいオブジェクトを作成し、それをリストにプッシュします。ここまでは順調ですね。
私のデータベースに保存するのはどうですか?私はtastypieを使用しているため、「/api/v1/category/」にPOSTを作成でき、ほら、新しいカテゴリがDBにあります。
わかりましたが... ページを更新していないので... 新しいカテゴリを更新したい場合はどうすればよいですか?
つまり、カテゴリを取得するときに ID を保存できるので、'/api/v1/category/id' に入力して変更を保存できますが、... 新しいカテゴリを作成すると、DB が割り当てられますID ですが、私の JavaScript はその ID をまだ認識していません。
つまり、ワークフローは次のようになります。
get を作成 > 既存のオブジェクトを (ID とともに) リストにプッシュ > 新しいカテゴリを作成 > リストにプッシュ > 既存のカテゴリを保存 (カテゴリには javacript に ID がありません) > カテゴリを編集 > 方法変更を保存しますか?
それで、私の質問は、一般的なパスは何ですか? カテゴリを送信してIDを何らかの方法で取得し、それをjsのオブジェクトに割り当てて、後で変更できるようにすることを考えました。問題は、サーバーに POST を実行しても何も返されないことです。
過去に私はそのようなことをしました。投稿を介してオブジェクトを送信し、保存し、取得して返送し、成功メソッドでIDを取得してjsオブジェクトに割り当てました。
ありがとう!