上传 SQLite 数据库文件到 Datasette
在与 Datasette 相同的环境中安装此插件。
datasette install datasette-upload-dbs
此插件要求您配置一个用于存储上传的文件的目录。
启动时,Datasette 将自动加载在该目录中找到的任何 SQLite 文件。这意味着您可以在文件上传之间安全地重启服务器。
要将目录配置为 /home/datasette/uploads
,将此内容添加到 metadata.yml
配置文件中
plugins:
datasette-upload-dbs:
directory: /home/datasette/uploads
或者如果您使用 metadata.json
{
"plugins": {
"datasette-upload-dbs": {
"directory": "/home/datasette/uploads"
}
}
}
您可以使用 "."
表示服务器启动时的当前文件夹,或者 "uploads"
表示相对于该文件夹的子文件夹。如果该文件夹尚不存在,它将在启动时创建。
然后像这样启动 Datasette
datasette -m metadata.yml
该插件默认加载配置目录中的所有数据库。
您可以通过添加以下设置来禁用此功能
"skip_startup_scan": true
只有拥有 upload-dbs
权限的用户才能上传文件。root
用户默认拥有此权限 - 其他用户可以使用权限插件授予访问权限,详细信息请参阅 权限 文档。
要作为 root 用户启动 Datasette,运行以下命令
datasette -m metadata.yml --root
并按照控制台上显示的链接访问。
如果用户拥有该权限,他们会在导航菜单中看到一个“上传数据库”链接。
这将把他们带到 /-/upload-dbs
,在那里他们可以通过选择文件或将它们拖到放置区域来上传数据库文件。
要在本地设置此插件,首先检出代码。然后创建一个新的虚拟环境
cd datasette-upload-dbs
python3 -m venv venv
source venv/bin/activate
现在安装依赖项和测试依赖项
pip install -e '.[test]'
要运行测试
pytest