#postgresql #flask #view #flask-sqlalchemy
Вопрос:
- Версия колбы : 2.0.1
- Postgresql: 13.3
Вид:
class MarketView(db.Model):
__table__ = create_view(
name="market_view",
selectable=select(
[
Tokens.id,
Tokens.symbol,
Tokens.name,
Tokens.tags,
Tokens.max_supply,
Tokens.circulating_supply,
Tokens.total_supply,
Tokens.ecosystem,
Tokens.consensus,
Tokens.category,
Tokens.portfolio,
Market.usd,
Market.btc,
Market.cmc_rank,
Market.trust_score,
Indicator.rsi,
Indicator.stochastic,
Indicator.bollinger,
Indicator.cci,
Indicator.cfi,
Indicator.ema,
Indicator.evm,
Indicator.macd,
Indicator.roc,
],
from_obj=(
Tokens.__table__.join(
Market, Tokens.id == Market.token_id
).join(Indicator, Tokens.id == Indicator.token_id)
),
),
metadata=db.metadata,
)
В этом
def configure_database(app):
@app.before_first_request
def initialize_database():
try:
db.create_all()
except ProgrammingError:
pass
@app.teardown_request
def shutdown_session(exception=None):
db.session.remove()
Я не знаю, как это исправить. Чтобы решить это (уродливый способ) Я использовал ошибку программирования исключений «кроме ошибки программирования: пройти».
Есть какая-нибудь помощь в разрешении этого дела ?
Спасибо!
Комментарии:
1. Есть ли такое
create_view_if_not_exists()
? Это был бы способ исправить это в SQL.2. О … Спасибо! Я воспользуюсь этим!