Flask、postgresql、およびリーフレットを使用して小さなwebappを作成することに決めました。私はPostGIS extender for postgresqlを使って座標(緯度と経度)を保存したかったのです。フラスコのアプリケーションでは、Flask-SQLAlchemy、青写真、特にFlask-Migrateを使用してデータベース移行プロセスを行います。ここで GeoAlchemy2のためのAlembicマイグレーションNameError:名前 'geoalchemy2'が定義されていません
は私のデータベースモデルの抜粋です。ここfrom . import db
from geoalchemy2 import Geometry
class Station(db.Model):
__tablename__ = 'stations'
id = db.Column(db.Integer, primary_key=True, unique=True)
name = db.Column(db.String(255))
position = db.Column(Geometry('Point', srid=4326))
私のアプリの抜粋/ のinitの.py
import os
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_migrate import Migrate
from config import config
db = SQLAlchemy()
migrate = Migrate()
def create_app(config_name=None, main=True):
if config_name is None:
config_name = os.environ.get('FLASK_CONFIG', 'development')
app = Flask(__name__)
app.config.from_object(config[config_name])
db.init_app(app)
migrate.init_app(app, db)
from .home import home as home_blueprint
app.register_blueprint(home_blueprint)
from .admin import admin as admin_blueprint
app.register_blueprint(admin_blueprint, url_prefix='/admin')
return app
特定のエクステンダを使用しようとする前に、私は」didnの私のモデルに適応するのに問題はありません。それ以来、移行は正常ですが、アップグレードは機能しません(python manage.py db upgrade)。ここで
私はウェブサーバから取得したログ:
sa.Column('position', geoalchemy2.types.Geometry(geometry_type='POINT', srid=4326), nullable=True),
`enter code here`NameError: name 'geoalchemy2' is not defined
私は少し失われたと私は、この特定のテーマに関する多くの助けを見つけることができませんでした。この問題の原因は何ですか?