python - unresolved attribute "Column" in class "SQLAlchemy" -
i use pycharm 5.0 , python3.5.and download liarbry build-in function of pycharm(setting-project-project interpreter-"+").other libraries appear well,but problems happens flask-sqlalchemy.
i import flask-sqlalchemy successfully.however,pycharm remind me "unresolved attribute reference 'column' in class'sqlalchemy'"."unresolved attribute reference 'relationship' in class 'sqlalchemy'" , on.
i have try ways ,but didn't work.for example:1.restart 2.remove , redownload 3.refresh cache.which mention in pycharm shows unresolved references error valid code
code:
from flask import flask, redirect, render_template, session, url_for, flash flask_sqlalchemy import sqlalchemy flask_bootstrap import bootstrap flask_wtf import form wtforms import stringfield, submitfield import os wtforms.validators import data_required basedir = os.path.abspath(os.path.dirname(__file__)) app = flask(__name__) app.config['secret_key'] = 'hard guess string' app.config['sqlalchemy_database_uri'] =\ 'sqlite:///' + os.path.join(basedir, 'data.sqlite') app.config['sqlalchemy_commit_on_teardown'] = true bootstrap = bootstrap(app) db = sqlalchemy(app) class role(db.model): __tablename__ = 'roles' id = db.column(db.integer, primary_key=true) name = db.column(db.string(64), unique=true) users = db.relationship('user', backref='role', lazy='dynamic') def __repr__(self): return '<role %r>' % self.name class user(db.model): __tablename__ = 'users' id = db.column(db.integer, primary_key=true) username = db.column(db.string(64), unique=true, index=true) role_id = db.column(db.integer, db.foreignkey('roles.id')) def __repr__(self): return '<user %r>' % self.username how can solve problem?
the constructor of flask_sqlalchemy.sqlalchemy class calls _include_sqlalchemy, attaches attributes sqlalchemy , sqlalchemy.orm instances.
this done @ runtime , not detected pycharm's code inspection.
it require flask_sqlalchemy use more standard way of importing attributes, from sqlalchemy import *. import attributes flask_sqlalchemy module instead of each instance of sqlalchemy , change way they're accessed.
i'm not python or sqlalchemy expert , won'd judge whether design or not open issue on https://github.com/mitsuhiko/flask-sqlalchemy , discuss there.
Comments
Post a Comment