0.1.0 |
|
---|
#23 in #panel
6.5MB
5.5K SLoC
mango-panel
适用于轻松使用 mango-orm 的管理面板。本例使用 actix-web。其他框架也可以用此类比。
要求
- actix-cors - https://crates.io/crates/actix-cors
- actix-files - https://crates.io/crates/actix-files
- actix-http - https://crates.io/crates/actix-http
- actix-multipart - https://crates.io/crates/actix-multipart
- actix-rt - https://crates.io/crates/actix-rt
- actix-session - https://crates.io/crates/actix-session
- actix-web - https://crates.io/crates/actix-web
- base64 - https://crates.io/crates/base64
- chrono - https://crates.io/crates/chrono
- env_logger - https://crates.io/crates/env_logger
- futures - https://crates.io/crates/futures
- humansize - https://crates.io/crates/humansize
- mango-orm - https://crates.io/crates/mango-orm
- metamorphose - https://crates.io/crates/metamorphose
- regex - https://crates.io/crates/regex
- sanitize-filename - https://crates.io/crates/sanitize-filename
- serde_json - https://crates.io/crates/serde_json
- str_slug - https://crates.io/crates/str_slug
- uuid - https://crates.io/crates/uuid
- serde - https://crates.io/crates/serde
- tera - https://crates.io/crates/tera
- mongodb - https://crates.io/crates/mongodb
- ...
- Vue.js - https://vuejs.ac.cn/
- Vuetify.js - https://vuetifyjs.com/
提示
对于模型字段的示例,请使用 tests。
快速入门
1. 安装mongodb(如果尚未安装)
### Ubuntu, Mint:
$ sudo apt install mongodb
## OR
### Ubuntu 20.04, Mint 20.x:
$ sudo apt update
$ sudo apt install dirmngr gnupg apt-transport-https ca-certificates
$ wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
$ sudo add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse'
$ sudo apt update
$ sudo apt install mongodb-org
$ sudo systemctl enable --now mongod
$ mongo --eval 'db.runCommand({ connectionStatus: 1 })' # For check
$ reboot
### Configuration file:
sudo nano /etc/mongod.conf
### Systemd:
$ sudo service mongod status
$ sudo service mongod start
$ sudo service mongod stop
$ sudo service mongod restart
$ sudo service mongod enable
$ sudo service mongod disable
### Uninstall:
$ sudo service mongod stop
$ sudo service mongod disable
$ sudo apt purge mongodb-org*
$ sudo rm -r /var/log/mongodb
$ sudo rm -r /var/lib/mongodb
$ sudo rm -f /etc/mongod.conf
$ sudo rm -f /etc/apt/sources.list.d/mongodb-org-4.4.list # for 4.4
2. 下载并解压项目存档
3. 进入项目目录并运行以下命令
$ cargo build
$ cargo run
Open in a web browser http://127.0.0.1:8088/admin
登录页面
第一次访问面板时,将创建第一个具有管理员权限的用户。
- 默认登录: admin
- 默认密码: 12345678
欢迎页面
文档列表
文档表单
动态小部件的使用示例
动态小部件 - 这是 ForeignKey
和 ManyToMan
的简化替代品。动态小部件用于创建文档样式分类。
图片上传字段
文件上传字段
颜色选择字段
日期和时间字段
在数据库中,日期和时间以UTC格式存储。在管理员面板中,日期和时间显示为本地时间。
字段 textarea
类型与 CKEditor 5
使用 ckeditor 的示例
依赖关系
// Example of a field in the Model.
#[serde(default)]
#[field_attrs(
widget = "textArea",
label = "Text Editor",
maxlength = 6000,
css_classes = "ckeditor"
)]
pub text_editor: Option<String>,