YouTube

Got a YouTube account?

New: enable viewer-created translations and captions on your YouTube channel!

Japanese subtitles

← 03-29 Updating Profile Entities

03-29 Updating Profile Entities

Get Embed Code
4 Languages

Showing Revision 1 created 01/13/2015 by Udacity.

  1. エンティティとキーを保存するとDatastore内で

  2. そのキーを使って
    新しいエンティティが作成されます
  3. この時にキーの競合が発生するのでしたね
  4. 同じキーを持つエンティティが存在する場合には
  5. 新しいエンティティは拒否されます
    エンティティはDatastore内で上書きされるため
  6. エンティティを更新するためには
    まずDatastoreから取り出して更新します
  7. そしてDatastoreに戻して保存します
  8. ConferenceApiの
    saveProfileメソッドに戻りましょう
  9. profileを保存する時には必ず最初に
  10. ユーザIDを使って新しいprofileを作成します
  11. つまりそのprofileを更新するのではなく
  12. 既存のProfileエンティティをオーバーライドする
  13. 新しいProfileエンティティを作成するのです
  14. APIs Explorerで動作を確認できます
  15. getProfileを実装したので
  16. getProfileを呼び出せば
    既存のprofileを取得できます
  17. 実行してみましょう
    私のdisplayNameはChocolate Cakeで
  18. teeShirtSizeはXLです
    ではteeShirtSizeを変更するとします
  19. まずはsaveProfileに移動します
  20. やりたいことはteeShirtSizeの変更だけです
  21. teeShirtSizeをXLからXSに変更します
  22. 実行します
  23. teeShirtSizeだけが変更されるはずですね
  24. 結果を見てみましょう
  25. 期待した結果とは違います
  26. displayNameがデフォルトのexampleに戻っています
  27. teeShirtSizeは変更されています
  28. 本来saveProfileメソッドは
    既存のprofileを取得して
  29. 変更があったフィールドだけを
    更新しなければなりません
  30. 次の課題でやってみましょう