Franco
Franco

Reputation: 2926

Access context_dict within view

I am running the following query in Django to pass into a template

release_list = Releases.objects.filter(id=release_id).values('all_artists','label_no_country','id','title','genre')
context_dict['releases'] = release_list

I would then like to pass the genre data into another query within the view, e.g.

genre_list = Releases.objects.filter(genre=genre).values()
context_dict['genre_list'] = genre_list

How do I access the genre data from the first query?

Upvotes: 2

Views: 44

Answers (1)

bakkal
bakkal

Reputation: 55448

Thing is

release_list = Releases.objects.filter(...).values('genre', ...)

Will behave like a list of objects with the keys you asked for so you can get many genre values, not one

If that's what you want then

for release in release_list:
    genre = release['genre']
    genre_list = Releases.objects.filter(genre=genre).values()

Or you can pull all the genre values from it

genres = [release['genre'] for release in release_list]

Then you can e.g. use it like this

genre_list = Releases.objects.filter(genre__in=genres)

Or you can pass the objects instead of values, that can work like this:

release = Releases.objects.get(...)
SomeModel.objects.filter(genre=release.genre)

Upvotes: 1

Related Questions