簡體   English   中英

如何使用外鍵從django中的其他表中獲取數據(Django新手)

[英]How to get data from other table in django with Foreign Key(New to Django)

我有兩個表 MeterDetail,EnergyData

class MeterDetail(models.Model):
    metername = models.CharField(max_length=20)
    meter_id = models.IntegerField()
    meter_type = models.CharField(max_length=20)
    meter_purpose = models.CharField(max_length=20)#auto_now_add=True
    meter_location = models.CharField(max_length=20)

    class Meta:
        db_table = 'meterdetails'
    def __str__(self):
        return str(self.meter_id)
class EnergyData(models.Model):
    last_kwh = models.FloatField()
    date_time_recorded = models.DateTimeField(default=timezone.now)#auto_now_add=True
    meter_id = models.ForeignKey(MeterDetail,on_delete=models.CASCADE,related_name="meter_details")

    class Meta:
        db_table = 'energydata'
        get_latest_by = "date_time_recorded"
    def __str__(self):
        return str(self.last_kwh)

我想使用第一個 object 從第二個表中獲取數據。我在 shell 中嘗試過 t= MeterDetail.objects.get(meter_id=1) 我無法在一個 t.energydata_set.all() 下面讀取它

給出錯誤:AttributeError: 'MeterDetail' object 沒有屬性 'energydata_set'

你必須使用t.meter_details.all()而不是t.energydata_set.all()

這里的meter_detailsrelated_name來獲取反向對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM