FLASK-SQLALCHEMY(Python)中实例路径出现错误

问题描述 投票:0回答:1

错误: 文件“”,第 225 行,在 makedirs 中 PermissionError: [WinError 5] 访问被拒绝: 'C:\Program Files\JetBrains\PyCharm 2023.1.2\jbr in\instance'

#how i want 
i want this to create an automatically instance path in which my database file will be stored

# **small piece of  main.py  creating database in sqlalchemy:**

    from flask import Flask
    from flask_bootstrap import Bootstrap
    from flask_sqlalchemy import SQLAlchemy
    import os

    app = Flask(__name__, instance_path=os.path.join(os.getcwd(), 'instance'))

    app.config\['SECRET_KEY'\] = '8BYkEfBA6O6WlSihBXox7C0sKR6b'
    Bootstrap(app)

# CREATE DB

    app.config\['SQLALCHEMY_DATABASE_URI'\] = 'sqlite:///movies.db'
    app.config\['SQLALCHEMY_TRACK_MODIFICATIONS'\] = False
    db = SQLAlchemy(app)

# CREATE TABLE

    class Movie(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(250), unique=True, nullable=False)
    year = db.Column(db.Integer, nullable=False)
    description = db.Column(db.String(500), nullable=False)
    rating = db.Column(db.Float, nullable=True)
    ranking = db.Column(db.Integer, nullable=True)
    review = db.Column(db.String(250), nullable=True)
    img_url = db.Column(db.String(250), nullable=False)

    db.create_all()
python flask flask-sqlalchemy
1个回答
0
投票

尝试在某些系统位置(尤其是“程序文件”)中创建目录时,运行 Flask 应用程序可能会遇到权限问题。请考虑将实例路径更改为用户具有写入权限的位置,例如您的用户目录。

例如:

app = Flask(__name__, instance_path=os.path.join(os.path.expanduser('~'), 'your_app_instance'))

将‘

your_app_instance
’替换为所需的目录名称。这应该有助于解决权限错误。

© www.soinside.com 2019 - 2024. All rights reserved.