该包最新版本(4.0.2)没有可用的许可信息。

维护者

详细信息

github.com/maxmckenzie/dachi

源代码

安装: 134

依赖: 2

建议: 0

安全: 0

星标: 0

关注者: 1

分支: 3

4.0.2 2016-11-11 13:59 UTC

README

Dachi 是一个 PHP 网络框架。

安装

  1. 安装 Node.JS(用于 bower 和 grunt)
  2. 安装 Composer(用于后端包管理)
  3. npm install -g bower(用于前端包管理)
  4. npm install -g grunt(用于任务自动化)

现有项目

Linux/Mac: composer install && vendor/bin/dachi dachi:all

Windows: composer install && vendor\bin\dachi dachi:all

新项目

要创建新的 Dachi 项目,只需创建一个包含以下内容的 composer.json 文件

{
	"minimum-stability": "dev",
	"prefer-stable": true,
	"autoload": {
		"psr-4": {
			"SampleClient\\SampleProject\\": "src/"
		}
	},
	"require": {
		"maxmckenzie/dachi": "^3.0"
	}
}

您应将 SampleClient\\SampleProject\\ 替换为您的项目正确的命名空间。但是,更改后示例 src/ 代码将失败,因此建议您在修改并删除示例 src/ 代码后再进行更改

创建此文件后,只需运行 composer install。这将从 Dachi 下载所有依赖项。

然后,您应运行以下命令以生成项目文件

Linux/Mac: vendor/bin/dachi dachi:create

Windows: vendor\bin\dachi dachi:create

Dachi 和您的项目现在已准备好。您现在应配置 Dachi(请参阅“配置”)。

命令行工具

Dachi 提供了一个命令行工具,以帮助开发。

刷新所有内容

尽管大多数命令可以单独运行,但最好确保所有缓存文件和内部需求都是正确的。您可以使用以下命令运行所有必要的命令

Linux/Mac: vendor/bin/dachi dachi:all

Windows: vendor\bin\dachi dachi:all

这将运行以下命令

  1. npm install
  2. bower install
  3. dachi:route
  4. dachi:modules
  5. dachi:config
  6. grunt --no-color

创建项目

安装后 Dachi 不会做任何事情。如果您没有使用现有项目,您必须首先使用 CLI 工具创建项目

Linux/Mac: vendor/bin/dachi dachi:create

Windows: vendor\bin\dachi dachi:create

生成路由

在 Dachi 可以路由请求之前,需要生成路由信息。这通过 CLI 工具完成

Linux/Mac: vendor/bin/dachi dachi:route

Windows: vendor\bin\dachi dachi:route

这将生成一个用于内部路由请求的 cache/dachi.routes.json 文件。如果 URL 路由更改,则必须再次运行此命令。

生成配置

Dachi 提供了许多 JSON 文件用于配置。为了提高部署时的请求速度,必须将这些文件合并为一个快速加载的文件。这通过 CLI 工具完成

Linux/Mac: vendor/bin/dachi dachi:route

Windows: vendor\bin\dachi dachi:route

这将生成用于内部配置的 cache/dachi.config.json 文件。如果更改了配置文件,则必须再次运行此命令。

生成模块信息

Dachi 使用一个系统来提供功能,如快捷方式,到模块。快捷方式允许您在数据库和模板中使用 SampleModule:Model 而不是 SampleClient\SampleProject\SampleModule\Model。此系统可能在未来用于向模块提供其他功能。您可以使用 CLI 生成模块信息文件

Linux/Mac: vendor/bin/dachi dachi:modules

Windows: vendor\bin\dachi dachi:modules

这将生成一个用于设置模块的内部使用的cache/dachi.modules.json文件。如果添加/删除或重命名了模块,必须再次运行此命令。

生成文档

Dachi完全使用ApiGen进行文档说明。可以使用CLI工具生成文档

Linux/Mac: vendor/bin/dachi dachi:document

Windows: vendor\bin\dachi dachi:document

该工具将在documentation文件夹中生成文档。此文档将包括您项目的文档。建议所有项目也使用ApiGen格式。可以通过传递--internal参数来传递工具,这将生成对调试Dachi核心有用的文档。

配置

在您部署Dachi之前,您应该确认您的配置是正确的。默认值通常是不够的。

Dachi配置

Dachi的核心配置文件存储在config目录中。配置目录包含三个文件夹,每个环境一个

  1. 生产
  2. 开发
  3. 本地

这三个级别作为覆盖。使用production设置作为默认值,并在其上堆叠developmentlocal。这意味着您可以省略不需要覆盖的配置文件。有关配置选项的详细信息,请参阅http://this.doesnt.exist.yet

至少您应该确认dachi.json文件是正确的,并且database.json文件是正确的。

如果您更改了配置,必须删除cache/dachi.config.json文件并运行dachi:config CLI命令。

Apache配置

Dachi在核心使用Apache将所有URI重定向到主index.php文件。您应该确认在.htaccess文件中正确设置了RewriteBase。(只要支持PHP,可以使用其他Web服务器,只要将所有请求重定向到src/index.php?dachi_uri=THE_URI_OMITTING_DOMAIN(即src/index.php?dachi_uri=/samples/13/view

Grunt配置

Grunt现在已实现,目前用于生成连接的bower css/js文件。目前没有对每个项目Grunt文件的支持。Grunt配置使用前缀为grunt.的文件在标准'Dachi配置'文件夹中(参见上面)。

参考文档

Sublime集成

备注

  • @route-render必须高于@route-uri(例如,@route-uri /x/y @route-render /x是正常的。 @route-uri /x/y @route-render /z是错误的,@route-uri /x/y @route-render /x/y/z也是错误的)
  • 当通过@route-render调用时,请求URI变量将是初始请求变量(@route-uri /x/:id/delete @route-render /x/:id将工作,@route-uri /x/:cool_id/delete @route-render /x/:diff_id将不会工作!)