# 创建网站
每个网站都带有一个数据库。它们可以通过网站特定的脚本进行定制,或者可以在它们上面安装应用程序。
# 创建新网站
要创建一个新网站,请从frappe-bench目录运行以下命令:
$ bench new-site library.localhost
MySQL root 密码:
安装 frappe...
更新 DocTypes for frappe : [========================================] 100%
更新国家信息 : [========================================] 100%
设置管理员密码:
重新输入管理员密码:
*** 调度器已禁用 ***
当前网站设置为 library.localhost
2
3
4
5
6
7
8
9
10
11
此命令将创建一个新数据库,因此您需要输入MySQL root密码。它还会要求您设置管理员用户的密码,设置一个您不会忘记的密码。这稍后会很有用。
现在,您将在sites目录中拥有一个名为library.localhost的新文件夹。
如果网站创建由于任何原因失败,系统将提示您回滚更改。这将删除library.localhost或您站点目录中的等效项,并删除创建的数据库/用户。这将允许您轻松重试,而无需手动清理不可用的网站。
# 网站目录结构
网站目录结构将如下所示:
sites/library.localhost
├── indexes
│ └── web_routes
├── locks
├── logs
├── private
│ ├── backups
│ └── files
├── public
│ └── files
└── site_config.json
2
3
4
5
6
7
8
9
10
11
12
indexes文件夹包含通过网站搜索生成的索引。
locks文件夹维护站点内文档的基于文件的锁定以及站点本身状态的指示器。
如您所见,private文件夹将包含任何数据库备份和私有文件。私有文件是需要认证才能访问的用户上传的文件。
public文件夹将包含无需认证即可访问的文件。这可以包含无需登录即可访问的网站图片。
site_config.json文件包含特定于此网站的配置,不应进行版本控制。这类似于环境变量文件。如果您查看文件的内容,它包含此网站的数据库配置值。
{
"db_name": "_ad03fa1a016ca1c4",
"db_password": "pz1d2gN5y35ydRO5",
"db_type": "mariadb"
}
2
3
4
5
6
# 在浏览器中访问网站
bench允许您创建多个网站,并在浏览器中通过同一端口单独访问它们。这就是我们在Bench中所说的多租户支持。
Frappe将通过将请求的主机名与网站名称匹配来识别要服务的网站,因此您应该能够在http://library.localhost:8000上访问您的网站。
如果这对您不起作用,那是因为我们必须告诉我们的操作系统library.localhost应该指向localhost。为此,您可以向/etc/hosts文件添加以下条目。
127.0.0.1 library.localhost
2
这将把library.localhost映射到localhost。Bench有一个方便的命令可以做到这一点。
$ bench --site library.localhost add-to-hosts
2
这将要求您输入root密码,并将条目添加到您的/etc/hosts文件中。

太好了,现在您可以在http://library.localhost:8000访问您的网站。恭喜您走到这一步。
# 在网站上安装应用程序
要在我们的网站上安装我们的图书馆管理应用程序,请运行以下命令:
$ bench --site library.localhost install-app library_management
安装 library_management...
2
3
4
要确认应用程序是否已安装,请运行以下命令:
$ bench --site library.localhost list-apps
frappe
library_management
2
3
4
您应该在您的网站上看到frappe和library_management作为已安装的应用程序。
当您创建一个新网站时,默认会安装
frappe应用程序。
# 登录到Desk
要在我们的应用程序中创建DocTypes,我们必须登录到Desk。转到http://library.localhost:8000,它应该会显示一个登录页面。
输入您创建网站时设置的管理员用户名和密码。

成功登录后,您将看到设置向导。这是一个一次性的设置向导,用于设置您网站的本地化详细信息。继续,选择您的语言,并完成向导。
到目前为止做得很好!
您应该看到类似于这样的Desk:

# 网站命令
我们运行了一些带有--site选项的Bench命令。这些命令称为网站命令。
这里有一些有用的网站命令。
Python控制台
# 访问Python控制台
$ bench --site library.localhost console
此命名空间中的应用程序:
frappe, library_management
In [1]:
2
3
4
5
6
7
MariaDB控制台
# 访问MariaDB控制台
$ bench --site library.localhost mariadb
欢迎使用 MariaDB 监控器。命令以 ; 或 \g 结束。
您的 MariaDB 连接 ID 是 2333498
服务器版本:10.4.13-MariaDB Homebrew
版权所有 (c) 2000, 2018, Oracle, MariaDB Corporation Ab 和其他人。
输入 'help;' 或 '\h' 获取帮助。输入 '\c' 清除当前输入语句。
MariaDB [_ad03fa1a016ca1c4]>
2
3
4
5
6
7
8
9
10
11
12
数据库备份
$ bench --site library.localhost backup
网站 library.localhost 的备份摘要在 2020-10-06 23:21:17.277960
配置 :./library.localhost/private/backups/20201006_232116-library_test-site_config_backup.json 94.0B
数据库: ./library.localhost/private/backups/20201006_232116-library_test-database.sql.gz 217.4KiB
网站 library.localhost 的备份已成功完成
2
3
4
5
6
您可以通过运行以下命令来查看所有网站命令的列表:
$ bench --help
Usage: bench frappe [OPTIONS] COMMAND [ARGS]...
选项:
--site TEXT
--profile 配置文件
--verbose 详细
--force 强制
--help 显示此消息并退出。
命令:
add-system-manager 向网站添加新的系统管理员
add-to-email-queue 将电子邮件添加到电子邮件队列
add-to-hosts 将网站添加到主机
backup 备份
browse 打开网站浏览器
build 压缩 + 合并 JS 和 CSS 文件,构建...
build-message-files 构建翻译的消息文件
build-search-index
bulk-rename 通过 CSV 文件重命名多个记录
clear-cache 清除缓存,doctype缓存和默认值
clear-website-cache 清除网站缓存
console 启动网站的ipython控制台
data-import 从 CSV 或 XLSX 批量导入文档...
destroy-all-sessions 清除所有用户的会话(注销登录)
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
接下来: 创建DocType.md
← 创建应用程序 创建一个DocType →