path — 路径

获取插件相关的目录路径(插件、数据、缓存、临时目录)。

self.path 提供插件沙箱内的标准目录路径(需声明 path 权限)。plugin()data()cache()temp() 同步返回缓存的 pathlib.Path 对象;get() 执行异步请求。

方法

方法说明
plugin()插件安装目录(pathlib.Path,同步)
data()插件数据目录(pathlib.Path,同步)
cache()插件缓存目录(pathlib.Path,同步)
temp()插件临时目录(pathlib.Path,同步)
get(scope, callback?)异步按作用域请求路径

plugin()

返回插件安装目录的 pathlib.Path

root = self.path.plugin()
config_path = root / "config.json"

data()

返回插件数据目录(适合存放用户数据、配置等)。

data_dir = self.path.data()

cache()

返回插件缓存目录(适合存放可重建的缓存数据)。

cache_dir = self.path.cache()

temp()

返回插件临时目录(适合存放临时文件)。

tmp_dir = self.path.temp()

get(scope, callback?)

异步按作用域请求路径,结果通过回调返回。

from pyrite_sdk.models.consts import PathScope

self.path.get(PathScope.DATA, callback=lambda **cb: print(cb.get("path")))

参数:

  • scope (strPathScope) — 路径作用域
  • callback (callable, 可选) — 结果回调

作用域: PathScope 可从 pyrite_sdk.models.consts 导入。

枚举值说明
PathScope.PLUGIN"plugin"插件安装目录
PathScope.DATA"data"插件数据目录
PathScope.CACHE"cache"插件缓存目录
PathScope.TEMP"temp"插件临时目录

plugin()data()cache()temp() 会优先返回插件上下文中缓存的值;未缓存时才会发起同步请求。

使用示例

class MyPlugin(UiPlugin):
    def _save_report(self, content):
        report = self.path.data() / "report.txt"
        report.write_text(content)
        self.message.success(f"报告已保存: {report}")

On this page