基于 Symfony 4 的开发示例

上一篇文章我们介绍了 Symfony 4 带来的一些变化,我们尝试用一个 demo 示例说明一下。

首先是安装项目:

此命令只下载了一个骨架文件 composer.json,并自动运行 composer install 命令。

Symfony Flex 是第一个下载的包。flex 安装完毕之后立马通过钩子程序勾住 composer 的安装过程。所以当 composer 开始安装其他组件包的时候,flex 通过与『食谱』服务器交互,并执行『食谱』里指定的操作。如果大家执行了上面的命令,一定会看到『食谱』执行的结果:

你可以发现,composer install 命令输出的内容比没有使用 flex 的内容要丰富很多,比如告诉终端用户,已经自动注册 framework-bundle;将默认配置复制到项目中;将默认环境变量添加到环境中;添加 Makefile 的任务,更新了 .gitignore 里的内容……

另外还告诉用户,因为没有安装 symfony/console,所以无法执行 assets:install 命令,以及安装后提示……

既然已经提示需要安装 symfony/console,那么我们就来安装他,不过,有了 flex,我们可以不用再老老实实用 composer require symfony/console,因为 flex 给 symfony/console 设置了更简短的别名:

flex 给很多常用组件都设置了别名,比如 symfony/web-server-bundle:

删除某个依赖的时候,也是可以使用别名的:

你也可以删除 framework-bundle 试试,看看 flex 是如何在删除某个依赖组件后,自动删除相关的配置信息的

最后我们安装一个有意思的完整项目——EasyAdminBundle:

然后我们再在 src/Entity/ 目录下,创建 Product.php

.env 文件可以调整一下数据库连接信息

执行熟悉的创建数据库和表的命令

最后到 etc/packages/easy_admin.yaml 添加要做后台管理的 Entity

此时你可以通过熟悉的启动 web 服务命令来开启一个服务。如果你并不想安装 webserver,也可通过 make 来启动服务

此时访问 http://localhost:8000,就可以访问 admin 的页面了

easy admin

此外你还可以尝试安装 mailer、profiler 等一大堆准备好的『食谱』,而这些都并不再默认包含在框架代码中,你可以按需安装了。

wx pay

CC BY-NC-ND 4.0 基于 Symfony 4 的开发示例 by Chrisyue's Blog is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

发表评论

电子邮件地址不会被公开。

CAPTCHA
Change the CAPTCHA codeSpeak the CAPTCHA code