使用tastypie,我將如何在單個POST請求中創建記錄和多個相關記錄?在單個POST請求中創建相關記錄
例如,我有這兩種資源:
class SongResource(ModelResource):
playlists = fields.ToManyField('playlists.api.resources.PlaylistResource', 'playlist_set', related_name = "song", full=True)
class Meta:
queryset = Song.objects.all();
resource_name = 'song'
authorization = Authorization()
class PlaylistResource(ModelResource):
song = fields.ToOneField(SongResource, 'song', full=True)
class Meta:
queryset = Playlist.objects.all()
resource_name = 'playlist'
authorization = Authorization()
我想創建一個新的播放列表,並使用與數據POST請求一個炮打響的歌曲,像這樣:
var data = JSON.stringify({
'name': 'My playlist.',
'songs': [{'title': 'Song 1'}, {'title': 'Song 2'}, {'title': 'Song 3'}]
});
這是行不通的。我被告知:「'歌'字段的數據不是URI,也不是字典,並且沒有'pk'屬性」。是否可以像這樣一次插入一條記錄?還是需要爲播放列表和每首歌發送單獨的請求?
我希望它可以自動完成,但這絕對可以工作。謝謝,我今天會試一試。 – 2012-07-11 23:53:59