python – 在Flask-SQLAlchemy中使用Mixer
发布时间:2020-12-20 13:41:13 所属栏目:Python 来源:网络整理
导读:我正在尝试使用 mixer来生成由Flask SQLAlchemy提供支持的网站的测试数据. 我在项目的根目录中创建了一个名为generate_test_data.py的文件,如下所示: # -*- coding: utf-8 -*-import appfrom mixer.backend.flask import mixerfrom models import *def gene
我正在尝试使用
mixer来生成由Flask SQLAlchemy提供支持的网站的测试数据.
我在项目的根目录中创建了一个名为generate_test_data.py的文件,如下所示: # -*- coding: utf-8 -*- import app from mixer.backend.flask import mixer from models import * def generate_test_data(): user = mixer.blend(Users) if __name__ == "__main__": generate_test_data() 但是,每次运行该文件时都会出现以下错误: Traceback (most recent call last): File "generate_test_data.py",line 3,in <module> import app ImportError: No module named app 我正在使用正确的virtualenv激活这样做. 更新 我的项目结构如下所示: / - generate_test_data.py - app/ -- __init__.py -- models.py **更新** 我的__init__.py: # -*- coding: utf-8 -*- from flask import Flask from flask.ext.sqlalchemy import SQLAlchemy from flask.ext.uwsgi_websocket import GeventWebSocket from config import REDIS_HOST,REDIS_PORT import redis app = Flask(__name__) db = SQLAlchemy(app) ws = GeventWebSocket(app) POOL = redis.ConnectionPool(host=REDIS_HOST,port=REDIS_PORT,db=0) redis = redis.Redis(connection_pool=POOL) from app import views,models 解决方法
我会将您的项目结构重新构建为:
myproject/ generate_test_data.py __init__.py models.py 然后,在generate_test_data.py中,您可以这样做 from myproject import app 这样会更好,因为您要删除任何名称冲突.此外,您明确要导入您真正想要的app变量.您当然可以将“myproject”命名为您想要的任何名称,但不要将其命名为“app”以确保安全 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |