Pracuję z Flask-Testing i sprawię, że plik test_app.py będzie testowany Ale mam ten błąd Plik "test_app.py", wiersz 4, z importu aplikacji create_app, db ImportError: Brak modułu o nazwie aplikacja. więc proszę o pomoc w jaki sposób mogę to naprawić i co jest problemem Niż :)ImportError: Brak modułu o nazwie app
tutaj jest mój Struktura:
myapplication
app
__ init __.py
model.py
form.py
autho
layout
static
templates
migrations
test
-test_app.py
config.py
manage.py
test_app.py
#!flask/bin/python
import unittest
from flask.ext.testing import TestCase
from app import create_app, db
from app.model import Users
from flask import request, url_for
import flask
class BaseTestCase(TestCase):
def create_app(self):
self.app = create_app('testing')
return self.app
config.py
class TestingConfig(Config):
TESTING = True
SQLALCHEMY_DATABASE_URI = os.environ.get('TEST_DATABASE_URL') or \
'sqlite:///' + os.path.join(basedir, 'mytest.sqlite')
__ init __.py
#!flask/bin/python
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
from flask.ext.login import LoginManager
import psycopg2
from config import basedir
from config import config
db = SQLAlchemy()
lm = LoginManager()
lm.login_view = 'login'
login_manager = LoginManager()
login_manager.login_view = 'layout.login'
def create_app(config_name):
app = Flask(__name__)
app.config['DEBUG'] = True
app.config.from_object(config[config_name])
db.init_app(app)
login_manager.init_app(app)
# login_manager.user_loader(load_user)
from .layout import layout as appr_blueprint
# register our blueprints
app.register_blueprint(appr_blueprint)
from .auth import auth as auth_blueprint
app.register_blueprint(auth_blueprint)
return app
Być może trzeba dodać 'MyApplication /' do katalogu '$ PYTHONPATH' (zobacz http://users-cs.au.dk/chili/PBI/pythonpath.html) – BorrajaX
thnx za komentarz, ale nie jestem ekspertem w python, więc powinienem polecić (venv) peg @ peg: ~/myapplication/test $ export PYTHONPATH = $ {PYTHONPATH}:/users/[twoja nazwa użytkownika]/myapplication/test/??? @BorrajaX – LiLi
Prawie. Spróbuj: 'export PYTHONPATH = $ {PYTHONPATH}:/users/[twoja nazwa użytkownika]/myapplication /' Twój moduł '' '' '' '' lub '/' znajduje się w katalogu'/myapplication/'. Daj nam znać, co się stanie – BorrajaX