Djangoを初めて使用しています。私は2つのモデルのデータが必要で、1つのクエリでそれを実行したいと考えています。ここで私は私が必要なものを正確に与えるSQLで何をしています。誰かが私にジャンゴでそれを行う方法を教えてもらえますか?Djangoで2つのモデルからデータを取得
select api_userprofile.last_name, api_userprofile.first_name,
api_userdevice.is_admin,
api_userdevice.is_alerts_enabled,api_userdevice.is_owner from
api_userprofile
join api_userdevice on api_userdevice.user_id=api_userprofile.user_id
where api_userdevice.user_id=10 and api_userdevice.device_id=29
これらは私の2つのモデルです:
class UserDevice(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.PROTECT, null=False)
device = models.ForeignKey(Device, on_delete=models.PROTECT, null=False)
activation_date = models.DateTimeField(default=timezone.now, null=False)
friendly_name = models.CharField(max_length=20, null=True, blank=True)
is_owner = models.BooleanField(null=False, default=False)
is_admin = models.BooleanField(null=False, default=True)
is_alerts_enabled = models.BooleanField(null=False, default=True)
class UserProfile(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.PROTECT, null=False)
token = models.TextField(null=False, blank=True)
first_name = models.TextField(null=True, blank=True)
last_name = models.TextField(null=True, blank=True)
任意の助けいただければ幸いです。
私は上記の私のSQLクエリでやったジャンゴでやりたいです。私はuserprofileから姓と名字、user_viceからis_admin、is_owner、is_alerts_enabledが必要です。 –
あなたは次のようなことを試すことができます:https://chriskief.com/2015/01/12/combine-2-django-querysets-from-different-models/ – jape