laminas-api-tools/api-tools-admin-ui

Laminas API Tools Admin UI模块

2.1.0 2023-01-09 13:08 UTC

README

Build Status

🇷🇺 俄罗斯公民

我们,Laminas的参与者,来自不同的国家。我们中许多人有在俄罗斯和乌克兰的朋友、亲戚和同事。我们中的一些人出生在俄罗斯。我们中的一些人现在生活在俄罗斯。我们中的一些人的祖父母在第二次世界大战中与法西斯作战。这里没有人支持法西斯主义。

我们中的一员有一位乌克兰亲戚和她儿子一起逃离了家园。由于前方道路的轰炸,火车延误了。我们有一些朋友躲在防空洞里。我们在空袭后焦急地等待他们的消息,这些空袭无差别地向医院、学校、幼儿园和住宅区开火。我们不是从任何媒体上得到这些消息。这是我们亲身体验到的。

您足够信任我们,愿意使用我们的程序,我们请求您再次信任我们。我们需要您的帮助。走出家门,抗议这场毫无意义的战争。停止杀戮。说“不,战争!”

🇺🇸 致俄罗斯公民

Laminas的我们来自世界各地。我们中许多人有在俄罗斯和乌克兰的朋友、家人和同事。我们中的一些人出生在俄罗斯。我们中的一些人现在生活在俄罗斯。我们中的一些人的祖父母在第二次世界大战中与纳粹作战。这里没有人支持法西斯主义。

我们团队的一员有一位乌克兰亲戚和她儿子一起逃离了家园。由于前方道路的轰炸,火车延误了。我们有一些朋友躲在防空洞里。我们在空袭后焦急地等待他们的消息,这些空袭无差别地向医院、学校、幼儿园和住宅区开火。我们不是从任何媒体上得到这些消息。这是我们亲身体验到的。

您足够信任我们,愿意使用我们的软件。我们请求您在这件事上信任我们。我们需要您的帮助。走出家门,抗议这场毫无必要的战争。停止杀戮。说“停止战争!”

这是新Laminas API Tools Admin用户界面的源代码。我们从头开始用AngularJS重写了UI,提高了性能和可用性。

我们添加了一些新功能

  • 支持连接到REST服务的数据库的Doctrine;
  • 数据库自动发现表和字段;
  • API级认证(开发中,见待办事项列表);

注意

要运行新UI,您需要使用api-tools-skeletondevelop分支。例如,您可以使用composer安装develop分支。

composer create-project laminas-api-tools/api-tools-skeleton api-tools dev-develop

此命令将在api-tools本地文件夹中安装api-tools-skeleton应用程序。

要求

  • npm,用于安装各种开发需求,主要包括GruntBower,以及利用这些工具。
  • Grunt必须全局安装,以便可以使用它来提供源构建和运行测试。
  • Bower 需要全局安装,以便使用它来安装开发依赖。

从当前目录运行以下命令来安装依赖项

$ npm install

如果您还没有安装 Grunt,请先安装它

$ sudo npm install -g grunt

如果您还没有安装 Bower,请先安装它

$ sudo npm install -g bower

最后,调用 Bower 安装相关的 CSS 和 JS 库

$ bower install

调用管理员界面

调用管理员界面的方式有三种:作为 Laminas API Tools 项目的部分,通过 node 独立运行,或使用 grunt 通过源代码调用。

通过 Laminas API Tools

将管理员界面添加到项目的开发需求中

$ composer require-dev "laminas-api-tools/api-tools-admin-ui:~1.0"

并在 config/development.config.php.dist 文件(以及可能已处于开发模式的 config/development.config.php 文件)中将模块 Laminas\ApiTools\Admin\Ui 添加到模块列表中。

导航到 Laminas API Tools 应用程序中的 URI /api-tools/ui 现在将触发 UI。

独立运行

独立方法使用 node 启动一个 web 服务器。此方法需要您有一个正在运行的 Laminas API Tools 管理员 API 并且知道 URL,并且该服务器配置为启用 CORS;如果您需要帮助设置此方面,请参阅 Laminas API Tools CORS 文档。记下服务器的 URI;API URI 将是 <server>/api-tools/api

此外,我们建议记下 API 文档的 URI,以便导航项可以指向它。

使用以下命令启动管理员界面

$ node index.js --src --api=<URI to Laminas API Tools Admin API (ends in /api-tools/api)>

(有关选项的帮助,请参阅 node index.js -h。)

默认情况下,如果您没有指定端口号,服务器将在端口 3000 上运行;您可以使用 --port=<port> 选项指定端口号。

通过 Grunt 的源代码调用

grunt serve 命令执行多个操作

  • 运行 grunt watch,它查找文件更改并运行诸如 jshint、单元测试和将部分合并到 JS 模板等任务。
  • 运行一个 livereload 静态 HTTP 服务器;任何文件更改都会强制它重新加载,并触发任何已加载 UI 的浏览器窗口重新加载。

Grunt 服务器以与独立服务器相同的方式运行:它接受相同的选项,并且具有相同的 CORS 限制。例如

$ grunt serve --api=<URI to Laminas API Tools Admin API (ends in /api-tools/api)> \
> --doc=<URI to API documentation> --port=3001 --host=ag.dev

请参阅我们的 贡献指南,了解如何运行测试和修改 UI。