2011年7月1日金曜日

14.More complex messages

では、get_notesのレスポンスメッセージを定義してみましょう。

get_notesのレスポンスは、複数の投稿を返すため、
Noteメッセージのコレクションとなる必要があります。
これは以下のように定義します。

class Notes(messages.Message):
  notes = messages.MessageField(Note, 1, repeated=True)



Message Fields


メッセージは、他のメッセージを含むことができます。
上記のNotes.notesフィールドでNoteを最初のパラメータとしたように、
最初のパラメータとして指定します。



Repeated Fields


上記のNotes.notesフィールドはまた、repeatedキーワードが指定されています。
repeatedフィールドの値は、指定した型のリストでなければなりません。
上記の例では、Notes.notesフィールドの値は、Note型のインスタンスのリストでなければなりません。

例として、Notesインスタンスの作成方法を示してみましょう。

response = Notes(notes=[Note(text='This is note 1'),
                        Note(text='This is note 2')])
print 'First Note is:', response.notes[0].text
print 'Second Note is:', response.notes[1].text





0 件のコメント:

コメントを投稿