Chcę uruchomić kwerendę w django i powrócićcała wartość wierszy danych. W SQL napisałem "SELECT * FROM SAMPLE WHERE PK = 1" Jak uruchomić filtr w django, ale nadal zwraca cały wiersz danych? Rozumiem filtr, ale zwraca tylko jedną wartość, a nie cały wiersz Czy mój problem jest związany z filtrem, tym, jak wchodzę w interakcje z zestawem zapytań, czy z problemem, w jaki sposób skompilowałem mój model? Przykład poniżej ...
class Sample(models.Model):
PID=UUIDField()
ClientID=models.TextField()
Key=models.TextField()
def __unicode__(self):
return self.ClientID
output=Sample.objects.filter(PK=1)
Results:<Sample: ClientID1>
Odpowiedzi:
0 dla odpowiedzi № 1Aby rozwiązać swój rząd w Sample
obiekt (zakładając, że istnieje), użyj
output = Sample.objects.get(pk=1)
Następnie możesz uzyskać dostęp do jego pól, tak jak każdy inny obiekt: object.PID
, object.ClientID
, object.Key
w Twoim przypadku. Możesz chcieć złapać przypadek, w którym nie znaleziono żadnego pasującego wiersza:
try:
output = Sample.objects.get(pk=1)
except Sample.DoesNotExist:
# Do something about non-existent row