sql >> データベース >  >> RDS >> PostgreSQL

db.create_all()'NoneType'オブジェクトには属性がありません'drivername'

    これは、Postgresに接続しようとしている方法の問題だと思います データベース:

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

    代わりに、この行を次のようにする必要があります。

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

    os.getenv(...)以降 現在、システムで次の名前の環境変数を取得しようとしています:"postgresql://postgres:[email protected]/database1" そして、あなたは確かにこの名前で環境変数を設定していませんでした。それがあなたがNoneTypeを取得している理由です。 postgresのエラー ドライバー:

    環境変数を使用してデータベース接続文字列を取得する場合は、.bash_profileで次のようにします。 または.bashrc ファイル:

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

    次に、データベース接続コードを次のように変更します。

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

    うまくいけば、それは理にかなっています!



    1. SQL Serverを使用して文字列を逆の順序で返す方法– REVERSE()

    2. 不良RACノードを再作成する

    3. SQL:各グループのN番目のアイテムを取得します

    4. Group By /OrderByのMySQLインデックス