I'm trying to filter a table in Django based on the value of a particular field of a ForeignKey
.
For example, I have two models:
class Asset(models.Model):
name = models.TextField(max_length=150)
project = models.ForeignKey('Project')
class Project(models.Model):
name = models.TextField(max_length=150)
I'd like to filter my asset list based on the name of the associated project.
Currently, I am performing two queries:
project_list = Project.objects.filter(name__contains="Foo")
asset_list = Asset.objects.filter(desc__contains=filter,
project__in=project_list).order_by('desc')
I'm wondering if there is a way to specify this kind of filtering in the main query?
Asset.objects.filter( project__name__contains="Foo" )