簡體   English   中英

如何使用Flask-sqlalchemy.exc.ProgrammingError將數據插入Postgresql數據庫?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM