Pandas 0.24.0 имеют быструю реализацию для загрузки данных в PostgreSQL базу данных на своем сайте . Я скопировал метод в свое приложение django и использую его так:
def insertData():
# download some data into a dataframe df...
engine = create_engine('postgresql://user:password@host:port/name')
df.to_sql(name='HistData', con=engine, if_exists="append", method=psql_insert_copy)
Вот так выглядит модель django:
class HistData(models.Model):
"""A model representing a stock's data on a specific date"""
# Fields
stock = models.ForeignKey('Stock', on_delete=models.CASCADE, related_name='histData',
null=False)
date = models.DateField(verbose_name='Date Correspondence', name='date', null=False)
openVal = models.FloatField(verbose_name='Open Value', name='open', null=True)
closeVal = models.FloatField(verbose_name='Close Value', name='close', null=True)
adjCloseVal = models.FloatField(verbose_name='Adjacent Close Value', name='adjClose', null=True)
highVal = models.FloatField(verbose_name='Highest Value', name='high', null=True)
lowVal = models.FloatField(verbose_name='Lowest Value', name='low', null=True)
volume = models.FloatField(verbose_name='Volume', name='volume', null=True)
Когда я запускаю приложение и попытаться активировать метод insertData()
Я получаю одну из следующих ошибок: либо Table "histdata" already exists
, либо relation "histdata" does not exist
, однако я убедился, что таблица существует. Я рассмотрел другие способы сделать это, в основном из здесь , и все же я не могу заставить его работать. Кто-нибудь знает, что я делаю не так?