更改游戏网站

Evennia 使用 Django Web 框架作为其数据库配置和提供的网站的基础。虽然要全面理解 Django 需要阅读 Django 文档,但我们提供了此教程以帮助您快速入门,并了解其与 Evennia 的相关性。本文详细介绍如何设置所有内容。 基于 Web 的角色视图教程 提供了一个更明确的示例,用于制作与您的游戏连接的自定义网页,您可以在完成本指南后阅读。

基本概述

Django 是一个 Web 框架。它为快速轻松构建网站提供了一套开发工具。

Django 项目被分为多个 应用,这些应用共同为一个项目做贡献。例如,您可能有一个用于进行投票的应用,一个用于显示新闻帖子,或者像我们一样,用于创建 Web 客户端的应用。

每个应用都有一个 urls.py 文件,用于指定该应用使用的 URL,一个 views.py 文件用于 URL 激活的代码,一个 templates 目录用于以 HTML 显示代码的结果,还有一个 static 文件夹,用于存放资产,例如 CSSJavascript 和图像文件(您可能会注意到,您的 mygame/web 文件夹中没有 statictemplates 文件夹。这是故意的,下面将进一步解释)。Django 应用程序还可能包含一个 models.py 文件,用于在数据库中存储信息。我们在这里不改变任何模型,想了解更多,请查看 新模型 页面(以及 Django 文档)。

还有一个根 urls.py,确定整个项目的 URL 结构。默认游戏模板中包含了一个入门级 urls.py,并自动导入了 Evennia 的所有默认 URL。这个文件位于 web/urls.py 中。

更改首页文本

Evennia 的默认首页包含有关 Evennia 项目的信息。您可能希望用您自己项目的信息替换这些信息。更改页面模板的方式与更改静态资源的方式相似。

与静态文件一样,Django 会在一系列模板文件夹中查找所需的文件。不同之处在于,Django 不会将所有模板文件复制到一个地方,而是仅搜索模板文件夹,直到找到匹配的模板。这意味着当您编辑模板时,所做的更改是即时的。您不必重新加载服务器或运行任何额外命令来查看这些更改 - 在浏览器中重新加载网页就足够了。

要替换索引页的文本,我们需要找到其模板。有关如何确定渲染页面所使用的模板的更多细节,请参考 基于 Web 的角色视图教程。现在,您应该知道我们想要更改的模板存储在 evennia/web/website/templates/website/index.html 中。

要替换此模板文件,您需要将更改后的模板放在 mygame/web/templates/ 中。与静态资源一样,您必须复制与主库中相同的文件夹结构。例如,要覆盖在 evennia/web/templates/website/index.html 中找到的主 index.html 文件,请将其复制到 mygame/web/templates/website/index.html 并根据需要自定义它。只需重新加载服务器以查看您的新版本。

进一步阅读

有关处理 Web 存在的更多提示,您可以继续阅读 基于 Web 的角色视图教程,在其中您可以学习制作显示游戏角色统计信息的网页。您还可以查看 Django 的教程 以更深入地了解 Django 的工作原理和存在的可能性。