web-dev-qa-db-fra.com

L'instance de SQLAlchemy n'a pas de membre de colonne

J'essaie actuellement d'implémenter la connexion Steam sur le site Web. Mais je ne parviens pas à faire passer cette erreur dans le code. J'ai créé l'objet de base de données mais il continue d'afficher l'erreur que j'ai mentionnée plus tôt. Je ne sais pas si SQLAlchemy a changé ou quoi depuis que je l'ai utilisé.

from flask import Flask, redirect, session, json, g
from flask_sqlalchemy import SQLAlchemy
from flask_openid import OpenID
import urllib.request as urllib2
import re


app = Flask(__name__)
app.config.from_pyfile('settings.cfg')
db = SQLAlchemy(app)
oid = OpenID(app)


Steam_API_KEY = 'key'


class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    Steam_id = db.Column(db.String(40))
    nickname = db.String(80)

    @staticmethod
    def get_or_create(Steam_id):
        rv = User.query.filter_by(Steam_id=Steam_id).first()
        if rv is None:
            rv = User()
            rv.Steam_id = Steam_id
            db.session.add(rv)
        return rv
8
Vice Kay
pip install pylint_flask_sqlalchemy

Vous devez installer un plugin supplémentaire pour améliorer la syntaxe sqlalchemy en travaillant avec Flask.

Lien source: https://pypi.org/project/pylint-flask-sqlalchemy/

0
Igor Udod

Je viens de rencontrer ce problème. Aucune des solutions suggérées n'a fonctionné pour moi, mais ce qui suit fonctionne.

Tout d'abord, installez ces modules:

pip install pylint-flask
pip install pylint-flask-sqlalchemy

Ensuite, dans Visual Studio Code, vous devez ajouter ce qui suit à votre settings.json fichier:

"python.linting.pylintArgs": ["--load-plugins", "pylint-flask", "pyling-flask-sqlalchemy"]
0
Venemo