[英]How to insert data to postgresql database with flask - sqlalchemy.exc.ProgrammingError?
我想用flask將數據插入到postgresql數據庫中。
這是我編寫的模型類代碼。
class Bet365(db.Model):
__tablename__ = "bet365s"
id = db.Column(db.Integer, primary_key=True)
sports = db.Column(db.Float)
casino = db.Column(db.Float)
poker = db.Column(db.Float)
games_bingo = db.Column(db.Float)
total = db.Column(db.Float)
withdrawal = db.Column(db.Float)
balance = db.Column(db.Float)
def __init__(self, sports, casino, poker, games_bingo, total, withdrawal, balance):
self.id = id
self.sports = sports
self.casino = casino
self.poker = poker
self.games_bingo = games_bingo
self.total = total
self.withdrawal = withdrawal
self.balance = balance
這是負責插入數據的代碼段。
@app.route('/testing/')
def testing():
data_bet365 = bet365_scrapping()
sports = float(data_bet365[0])
casino = float(data_bet365[1])
poker = float(data_bet365[2])
games_bingo = float(data_bet365[3])
total = float(data_bet365[4])
withdrawal = float(data_bet365[5])
balance = float(data_bet365[6])
result_bet365 = Bet365(sports, casino, poker, games_bingo, total, withdrawal, balance)
db.session.add(result_bet365)
db.session.commit()
return (jsonify(data_bet365))
當我運行此腳本時,會出現這樣的錯誤。
sqlalchemy.exc.ProgrammingError
sqlalchemy.exc.ProgrammingError: (psycopg2.ProgrammingError) can't adapt type 'builtin_function_or_method'
[SQL: 'INSERT INTO bet365s (id, sports, casino, poker, games_bingo, total, withdrawal, balance) VALUES (%(id)s, %(sports)s, %(casino)s, %(poker)s, %(games_bingo)s, %(total)s, %(withdrawal)s, %(balance)s)']
[parameters: {'withdrawal': 0.0, 'id': <built-in function id>, 'sports': -29.94, 'total': 593.75, 'casino': 464.22, 'poker': 14.29, 'games_bingo': 145.17, 'balance': 593.75}]
我找不到解決方案。 請幫我。
看起來問題出在您的列類型上。 您正在嘗試將浮點數插入Integer列。
我不會將id
用作類屬性名稱。 您正在將id
全局函數分配給初始化self.id
中的self.id
,這是回溯的原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.