У меня есть следующая модель Django, которая извлекает 3 записи из базы данных. Приведенный ниже класс представляет модель в приложении Django, которое я создаю. Я понимаю, что параметры, принятые функцией create_hotspots
, не используются. Я просто упростил то, как код выглядел ранее в целях объяснения моей проблемы.
from django.db import models
from django.db import connection, transaction
import math
import MySQLdb
class Victims(models.Model):
def __init__(self):
self.results=[]
def create_hotspots(self,radius,latitude,longitude):
self.radius=str(radius)
self.latitude=str(latitude)
self.longitude=str(longitude)
db=MySQLdb.connect (host = "localhost", user = "root",passwd = "pass",db = "test")
cursor = db.cursor ()
cursor.execute("""SELECT * FROM poi_table""")
self.results=cursor.fetchall()
cursor.close ()
db.close ()
def __unicode__(self):
return self.results
Теперь предположим, что я открываю оболочку Django и выполняю следующие инструкции:
>>from PyLayar.layer.models import Victims
C:\Python26\lib\site-packages\MySQLdb\__init__.py:34: DeprecationWarning: the sets module is deprecated
from sets import ImmutableSet
>>> v=Victims()
>>> v.create_hotspots(1000, 42.3931955679, -72.5289916992)
>>> Victims.objects.all()
[]
Мой вопрос: почему инструкция Victims.objects.all()
не дает результатов? Запрос SQL возвращает 3 результата, а переменная results
сохраняет результирующий кортеж.