sql >> Base de Datos >  >> RDS >> PostgreSQL

El objeto db.create_all() 'NoneType' no tiene atributo 'drivername'

Creo que este es un problema con la forma en que intenta conectarse a su Postgres base de datos:

app.config["SQLALCHEMY_DATABASE_URI"] = os.getenv("postgresql://postgres:[email protected]/database1")

probablemente quieras que esta línea sea la siguiente:

app.config["SQLALCHEMY_DATABASE_URI"] = "postgresql://postgres:[email protected]/database1"

desde el os.getenv(...) actualmente está intentando obtener una variable de entorno en su sistema llamada:"postgresql://postgres:[email protected]/database1" y seguramente no configuró una variable de entorno con este nombre. Por eso está obteniendo un NoneType error para su postgres conductor:

Si desea utilizar una variable de entorno para obtener la cadena de conexión de su base de datos, haga algo como lo siguiente en su .bash_profile o .bashrc archivo:

export SQLALCHEMY_DATABASE_URI='postgresql://postgres:[email protected]/database1'

luego cambie el código de conexión de su base de datos a lo siguiente:

app.config["SQLALCHEMY_DATABASE_URI"] = os.environ.get('SQLALCHEMY_DATABASE_URI')

¡Ojalá eso tenga sentido!