2017-12-01 10 views
0

私は外部キーの関係を持たない2つのテーブルから結果を取得しようとしていますが、私が使用しているアプローチが正しいかどうかを知りたいです。外部キーのない2つのテーブル間のdjangoクエリーセット

django.db import models 
django.contrib.auth.user import User 

class UserWorkExperience(models.Model): 
    user = models.ForeignKey(UserProfile) 
    job_title = models.CharField(max_length=255) 
    salary = models.IntegerField(null=True,default='0') 

class UserSkills(models.Model): 
    user = models.ForeignKey(UserProfile) 
    skill_name = models.CharField(max_length=255) 

だから、私は何をしたいことは「100000」よりも大きいジョブのタイトルを持っているすべてのユーザーの

  1. スキルのソフトウェア・エンジニア 'と給与

答えて

2
user_ids = UserWorkExperience.objects.filter(job_title='software engineer', salary__gt=100000).values_list('user', flat=True) 
skills = UserSkills.objects.filter(user__in=user_ids) 

のすべてのレコードでありますjob_titleにはForeignKeyを使用することをお勧めします。skill_name

+0

は魅力 – parvez

関連する問題