Вы должны добавить маршрутизатор для получения идентификатора эпизода
router = routers.DefaultRouter()
router.register('', StoryView, basename='stories')
router.register('episodes', EpisodeView, basename='episodes')
router.register('(?P<story_id>[0-9]+)/episodes', StoryEpisodeView, basename='episodes')
, а затем написать обновить метод списка для StoryEpisodeView:
def get_queryset(self):
return Episode.objects.filter(story_id=self.story_id)
def list(self, request, *args, **kwargs):
self.story_id = kwargs.get(story_id)
super(request, *args, **kwargs)