这是我第一次问有关stackoverflow的问题。在数据科学训练营中,我错过了一堂课,我正在录音中,并试图跟着老师讲解,向我们展示如何在Flask应用程序中引用sqlite数据库,但是我无法运行示例。我能够运行不引用sqlite的flask应用程序。例如,当我尝试运行以此开头的python代码时:
const x = document.getElementById("days");
const y = document.getElementById("days2");
const result = document.getElementById("result");
function val(){
if((x.value !== null && x.value !== '') && (y.value !== null && y.value !== '')){
if(isFinite(x.value) && isFinite(y.value)){
result.value = (Number(x.value) > Number(y.value)) ? x.value : y.value;
}else{
result.value = 'no value'
}
}
}
我遇到了一个错误提示
import numpy as np
import sqlalchemy
from sqlalchemy.ext.automap import automap_base
from sqlalchemy.orm import Session
from sqlalchemy import create_engine, func
from flask import Flask, jsonify
#################################################
# Database Setup
#################################################
engine = create_engine("sqlite:///titanic.sqlite")
# reflect an existing database into a new model
Base = automap_base()
# reflect the tables
Base.prepare(engine, reflect=True)
# Save reference to the table
Passenger = Base.classes.passenger
#################################################
# Flask Setup
#################################################
app = Flask(__name__)
我猜这意味着它找不到“ passenger”表,但是不确定它是否存在,因此我检查了数据库。在课堂录音中,我的教授无需修改任何内容即可运行此代码。任何帮助都非常感谢。谢谢!
答案 0 :(得分:1)
乘客表在 titanic.sqlite
文件中的拼写是否与您引用的方式相同?
您可以在具有相同依赖项的 jupyter notebook 中运行以下代码。
engine = create_engine("sqlite:///titanic.sqlite")
Base = automap_base()
Base.prepare(engine, reflect=True)
# This should return the table names
Base.classes.keys()
答案 1 :(得分:0)
我的问题是我需要导入os:)
答案 2 :(得分:0)
engine = create_engine("sqlite:///titanic.sqlite")
问题出在上面: 添加完整路径,如“c:/user/myname/desktop/myapp/titanic.sqlite”,而不仅仅是“titanic.sqlite”