【发布时间】:2020-09-21 09:46:46
【问题描述】:
在同一目录级别有两个文件,application.py 和 models.py,第一个包含蓝图注册、初始登录和索引路由以及辅助数据库模型。
型号:
# -*- coding: utf-8 -*-
from src.application import db
from flask_login import UserMixin
class Usuarios(db.Model,UserMixin):
__tablename__ = 'usuarios'
id = db.Column(db.Integer, primary_key=True)
nome = db.Column(db.String(), index=True)
usuario = db.Column(db.String(), index=True, unique=True)
email = db.Column(db.String(), unique=True)
senha = db.Column(db.String())
stats = db.Column(db.Boolean())
role = db.Column(db.String())
foto = db.Column(db.String())
artigos = db.relationship('Artigos',backref='usuario',uselist=False)
class Artigos(db.Model):
__tablename__ = 'artigos'
id = db.Column(db.Integer, primary_key=True)
titulo = db.Column(db.String(), index=True)
id_usuario = db.Column(db.Integer,db.ForeignKey('usuarios.id'))
text = db.Column(db.Text())
data = db.Column(db.DateTime())
stats = db.Column(db.Boolean())
应用:
# coding: utf-8
from flask import Flask, url_for, redirect, render_template, request, abort, Blueprint, session, jsonify
from flask_login import LoginManager, logout_user, current_user, login_user, login_required
from flask_sqlalchemy import SQLAlchemy
from flask_migrate import Migrate
import os
app = Flask(__name__)
app.secret_key = os.urandom(24)
app.config['SQLALCHEMY_DATABASE_URI'] = "postgres://postgres:postgres@192.168.10.102:5432/ntest"
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
#Flask_Login
login_manager = LoginManager()
login_manager.init_app(app)
#Flask_Alchmey e migrate
db = SQLAlchemy(app)
migrate = Migrate(app, db)
from src.models import Usuarios
....
自从我决定使用 ORM 并迁移我的数据库以来,我一直面临着这个无聊的 ImportError 问题。我不知道要拆分这些文件或调用他们的导入。任何人都可以提供帮助或建议吗?
(test) C:\Users\PC\Desktop\Python\test\src>python application.py
Traceback (most recent call last):
File "application.py", line 22, in <module>
from src.models import Usuarios
File "CC:\Users\PC\Desktop\Python\test\src\models.py", line 2, in <module>
from src.application import db
File "C:\Users\PC\Desktop\Python\test\src\application.py", line 22, in <module>
from src.models import Usuarios
ImportError: cannot import name Usuarios
【问题讨论】:
-
可以发
traceback吗?
标签: python flask sqlalchemy flask-sqlalchemy flask-migrate