Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 59 additions & 7 deletions website/docs/best-practice/data-storing.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,17 +31,17 @@ require("nonebot_plugin_localstore")
import nonebot_plugin_localstore as store

# 获取插件缓存目录
cache_dir = store.get_cache_dir("plugin_name")
cache_dir = store.get_plugin_cache_dir()
# 获取插件缓存文件
cache_file = store.get_cache_file("plugin_name", "file_name")
cache_file = store.get_plugin_cache_file("file_name")
# 获取插件数据目录
data_dir = store.get_data_dir("plugin_name")
data_dir = store.get_plugin_data_dir()
# 获取插件数据文件
data_file = store.get_data_file("plugin_name", "file_name")
data_file = store.get_plugin_data_file("file_name")
# 获取插件配置目录
config_dir = store.get_config_dir("plugin_name")
config_dir = store.get_plugin_config_dir()
# 获取插件配置文件
config_file = store.get_config_file("plugin_name", "file_name")
config_file = store.get_plugin_config_file("file_name")
```

:::danger 警告
Expand All @@ -53,9 +53,61 @@ config_file = store.get_config_file("plugin_name", "file_name")
```python
from pathlib import Path

data_file = store.get_data_file("plugin_name", "file_name")
data_file = store.get_plugin_data_file("file_name")
# 写入文件内容
data_file.write_text("Hello World!")
# 读取文件内容
data = data_file.read_text()
```

:::note 提示

对于嵌套插件,子插件的存储目录将位于父插件存储目录下。

:::

## 配置项

### localstore_cache_dir

自定义缓存目录

默认值:

- macOS: `~/Library/Caches/<AppName>`
- Unix: `~/.cache/<AppName>` (XDG default)
- Windows: `C:\Users\<username>\AppData\Local\<AppName>\Cache`

```dotenv
LOCALSTORE_CACHE_DIR=/tmp/cache
```

### localstore_data_dir

自定义数据目录

默认值:

- macOS: `~/Library/Application Support/<AppName>`
- Unix: `~/.local/share/<AppName>` or in $XDG_DATA_HOME, if defined
- Win XP (not roaming): `C:\Documents and Settings\<username>\Application Data\<AppName>`
- Win 7 (not roaming): `C:\Users\<username>\AppData\Local\<AppName>`

```dotenv
LOCALSTORE_DATA_DIR=/tmp/data
```

### localstore_config_dir

自定义配置目录

默认值:

- macOS: same as user_data_dir
- Unix: `~/.config/<AppName>`
- Win XP (roaming): `C:\Documents and Settings\<username>\Local Settings\Application Data\<AppName>`
- Win 7 (roaming): `C:\Users\<username>\AppData\Roaming\<AppName>`

```dotenv
LOCALSTORE_CONFIG_DIR=/tmp/config
```