class Apps(models.Model):
app_name = models.CharField(max_length=200)
app_type = models.CharField(max_length=200)
app_link = models.CharField(max_length=200)
class FavouriteApps(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE)
app = models.ForeignKey(Apps,on_delete=models.CASCADE)
I need to get all favourite apps details from 'Apps' table based on the logged in user. Example
App Table
app_name app_type app_link
AppA type1 linkA
AppB type1 linkB
AppC type2 linkC
Favourite Table
user app
userA AppA
userB AppA
userA AppC
So when UserA logged in I need to fetch userA favourite apps details using foriengkey relationship. Here it is AppA and AppC are favourite apps for userA
I had tried this and got the answer
Apps.objects.annotate(all=Exists(FavouriteApps.objects.filter(Q(user__username=self.request.user.username), app_id=OuterRef('pk')))).filter(all=True)