As written it looks like you want to get all the 0 status transactions for 
a given user, and then get all the transaction details for those 
transactions (.filter allows for any number of results) Since your var 
transaction is a list, and you really only care about the ids to pull the 
transaction details, you should have your code like this:

def get_object(self, pk):
    user = User.objects.get(id=pk)
    transactions = Transaction.objects.filter(user_id=user.id, 
current_status=0).values_list('id', flat=True)
    return Transaction_Detail.objects.filter(transaction_id__in=transactions
, status=0)



On Thursday, March 8, 2018 at 9:52:44 AM UTC-5, Angel Rojas wrote:
>
> Hello friends, I have a little problem with a relationship with 3 tables
>
> tables
> - User
> - Transaction
> - TransactionDetail
>
> my query is
>
> class TransactionInitiated(generics.ListAPIView):
>     """
>         List Transaction Initiated
>     """
>     serializer_class = TransactionSerializer
>
>     def get_object(self, pk):
>         user = User.objects.get(id=pk)
>         transaction = Transaction.objects.filter(user_id=user.id, 
> current_status=0)
>         # Transactiondetail.objects.filter(transaction_id=transaction.id, 
> status=0)
>         return Transaction.objects.filter(user_id=user.id, 
> current_status=0).order_by('-id')
>
>     def get(self, request, pk, format=None):
>         current_user = request.user
>         list_trans_init = self.get_object(current_user.id)
>         serializer = TransactionSerializer(list_trans_init, many=True)
>         return JsonResponse({'data': serializer.data}, safe=False)
>
>
> with this query I recovery all user with a respective transaction, but I 
> don't how to use inner join in here, I try next
>
>
> def get_object(self, pk):
>     user = User.objects.get(id=pk)
>     transaction = Transaction.objects.filter(user_id=user.id, 
> current_status=0)
>     return Transaction_Detail.objects.filter(transaction_id=transaction, 
> status=0)
>
>
> in here return me the next error
>
>
> more than one row returned by a subquery used as an expression.
>
>
>
> please some help me.
>
>
> thanks for your attention.
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/7d8b7d7b-5dfc-4ba6-816a-294264f2020b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to