Civitai SD Webui 扩展项目教程
1. 项目的目录结构及介绍
Civitai SD Webui 扩展项目的目录结构如下:
sd_civitai_extension/
├── README.md
├── requirements.txt
├── setup.py
├── sd_civitai_extension/
│ ├── __init__.py
│ ├── main.py
│ ├── config/
│ │ ├── __init__.py
│ │ ├── settings.py
│ ├── utils/
│ │ ├── __init__.py
│ │ ├── helper.py
│ ├── templates/
│ │ ├── index.html
│ ├── static/
│ │ ├── css/
│ │ ├── js/
│ ├── models/
│ │ ├── __init__.py
│ │ ├── model.py
目录结构介绍
README.md
: 项目说明文档。requirements.txt
: 项目依赖文件。setup.py
: 项目安装脚本。sd_civitai_extension/
: 主项目目录。__init__.py
: 包初始化文件。main.py
: 项目启动文件。config/
: 配置文件目录。settings.py
: 配置文件。
utils/
: 工具函数目录。helper.py
: 辅助函数文件。
templates/
: 模板文件目录。index.html
: 主页模板文件。
static/
: 静态资源目录。css/
: CSS 文件目录。js/
: JavaScript 文件目录。
models/
: 模型文件目录。model.py
: 模型定义文件。
2. 项目的启动文件介绍
项目的启动文件是 main.py
,该文件负责启动整个应用程序。以下是 main.py
的主要内容:
from flask import Flask
from sd_civitai_extension.config import settings
from sd_civitai_extension.models import db
app = Flask(__name__)
app.config.from_object(settings)
db.init_app(app)
@app.route('/')
def index():
return render_template('index.html')
if __name__ == '__main__':
app.run(debug=True)
启动文件介绍
Flask
: 导入 Flask 类,用于创建 Flask 应用实例。settings
: 导入配置文件。db
: 导入数据库模型。app
: 创建 Flask 应用实例。app.config.from_object(settings)
: 加载配置文件。db.init_app(app)
: 初始化数据库。@app.route('/')
: 定义主页路由。app.run(debug=True)
: 启动应用,开启调试模式。
3. 项目的配置文件介绍
项目的配置文件是 settings.py
,该文件包含了应用的配置信息。以下是 settings.py
的主要内容:
import os
class Config:
SECRET_KEY = os.environ.get('SECRET_KEY') or 'hard_to_guess_string'
SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or 'sqlite:///data.db'
SQLALCHEMY_TRACK_MODIFICATIONS = False
class DevelopmentConfig(Config):
DEBUG = True
class ProductionConfig(Config):
DEBUG = False
config = {
'development': DevelopmentConfig,
'production': ProductionConfig,
'default': DevelopmentConfig
}
配置文件介绍
Config
: 基础配置类,包含通用配置项。SECRET_KEY
: 应用密钥。SQLALCHEMY_DATABASE_URI
: 数据库连接 URI。SQLALCHEMY_TRACK_MODIFICATIONS
: 是否跟踪数据库修改。
DevelopmentConfig
: 开发环境配置类,继承自Config
,开启调试模式。ProductionConfig
: 生产环境配置类,继承自Config
,关闭调试模式