我在Flask中构建了一个运行日志记录Webapp,并通过Flask-SQLalchemy由Postgres数据库支持,并托管在Heroku上。
我想输入我以前使用Google表单生成的应用之前的运行数据。我有一个类似this的CSV结构。 (我没有足够的声誉积分来嵌入图像。)
我的数据库模型如下:
#Users Model
class User(UserMixin, db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(64), index=True, unique=True)
email = db.Column(db.String(120), index=True, unique=True)
password_hash = db.Column(db.String(128))
runs = db.relationship('Run', backref='owner')
def set_password(self, password):
self.password_hash = generate_password_hash(password)
def check_password(self, password):
return check_password_hash(self.password_hash, password)
def __repr__(self):
return '<User {}>'.format(self.username)
#Runs Model
class Run(db.Model):
id = db.Column(db.Integer(), primary_key=True)
date_posted = db.Column(db.DateTime(), index = True, default = datetime.utcnow)
distance = db.Column(db.Float())
run_time = db.Column(db.Integer())
calories_burned = db.Column(db.Integer())
owner_id = db.Column(db.Integer, db.ForeignKey('user.id'))
def __repr__(self):
return '<Run {}>'.format(self.distance)
我已经阅读了Postgres中提供的COPY命令,并且熟悉从python中的CSV读取,但是我从未编写过原始sql。
我想弄清楚:
感谢您的帮助!