Я пишу API в django rest framework, я хочу сделать фильтр для таблицы внешнего ключа.
хочу сделать фильтр в таблице scripts_details согласно пользователю.Так как scripts_details не имеет пользователя, я пытаюсь отфильтровать таблицы сценариев.но этого не происходит.
я устал return ScriptDetails.objects.filter(script=scriptid, script.user=self.request.user)
Models.py
class Scripts(models.Model):
tutorial = models.OneToOneField(TutorialDetail)
language = models.ForeignKey(Language)
status = models.BooleanField(default=False)
data_file = models.FileField(upload_to='scripts',blank=True)
user = models.ForeignKey(User,related_name='user_id')
class ScriptDetails(models.Model):
cue=models.TextField()
narration=models.TextField()
order=models.PositiveIntegerField()
script=models.ForeignKey('Scripts', on_delete = models.CASCADE)
serializer.py
class ScriptsDetailSerializer(serializers.ModelSerializer):
class Meta:
model=ScriptDetails
fields=('cue','narration','order','script')
views.py
class ScriptsDetailsList(generics.ListCreateAPIView):
serializer_class=ScriptsDetailSerializer
def get_queryset(self):
scriptid = self.kwargs.get('scriptid')
return ScriptDetails.objects.filter(script=scriptid)
urls.py
url(r'^api/scriptsdetails/(?P<scriptid>[0-9]+)/', views.ScriptsDetailsList.as_view())