使用symfony命令创建项目的方法,结合实例形式分析了Symfony命令的使用方法与项目创建的相关技巧,需要的朋友可以参考下。

  概况

  这一章节描述一个Symfony项目的合理结构框架,并且用 symfony 命令初始项目结构。

  介绍

  在symfony里,一个项目是一个指定域名下的一组服务和有效操作,共享相同的项目模型。

  在一个项目里面,应用中的操作是一组逻辑;每个应用都可以正常的独立运行,与相同项目中的其他应用互不干涉。

  在多数情况中,一个项目会包含两个应用,一个负责前台显示,一个负责后台处理,使用相同的数据库。当然你也可以在一个项目中包含很多小站点,每个站点都是一个不同的应用。注意在不同应用之间使用的超链接必须使用绝对路径。

  每一个应用都是一组模块,每一个模块都负责一个特殊的功能。一个模块通常为了类似的功能而使用一个页面或一组页面。例如模块可以是home, articles, help, shoppingCart, account,等等。

  模块的功能:每个模块都有它们各自的功能,例如 shoppingCart(购物车) 模块要有 添加(add), 展示(show) 和 更新(update) 功能。功能的行为可以看作一个典型web应用中的页行为。

  如果一个新的项目的级别太多,那么可以很简单的把模块中的所有功能分组,这样做文件结构可以保持简单。当应用更加复杂的时候,可以在逻辑模块中组织功能。

  每个应用都可以运行在不同的环境中,例如,不同的配置或数据库。一般来说每个新的应用都会运行在三个环境(开发,测试和最终产品)中。如果需要的话每个应用都可以运行在更多的环境中,在不同的环境中仅仅需要修改配置配件。

  例如,一个测试环境中需要记录警告和错误,而一个最终产品环境将只需要记录错误。在开发环境中通常不开启缓存加速,而在测试和最终产品环境中需要开启。开 发环境和测试环境可能会需要测试用的数据,储存在最终产品的远程数据库中。所有的环境都可以在一台机器上共存,而通常产品服务器上只有最终产品环境。

  注意:如果你是通过沙盒(sandbox)使用symfony,你不需要设置项目或应用,沙盒(sandbox)内部已经准备了一个名为'sf_sandbox'的项目和一个名为'frontend'的应用。你也不需要设置web服务器,只需要把你的程序放置在 web/ 根目录下。

  Pake

  SymFony使用专门的工具Pake去管理项目、应用和模块。Pake是一个php工具,类似于Rake命令(这是一个将 make 命令转换为Ruby的工具)。它会根据一个名为 pakefile.php 的特殊配置文件自动化一些管理任务。如果你使用 pake 工具代替了 symfony 命令行,所有的操作都会变得非常简单。

  要得到所有有效的管理操作命令列表,只需要简单得在你的项目目录中输入:

  $ symfony -T

  CLI(命令行操作)的任务调度用于一个项目的前期阶段期间。一个关于CLI任务调度的完整说明参考CLI章节 。

  项目设置

  一切开始之前,你必须新建一个存放项目的目录:

  $ mkdir /home/steve/myproject

  然后,开始初始化项目生成原始文件和目录,简单的输入:

  $ cd /home/steve/myproject

  $ symfony init-project myproject

  这是一个新创建的文件系统树结构的概况:

  apps/

  batch/

  cache/

  config/

  data/

  doc/

  lib/

  log/

  test/

  web/

  symfony 命令可以在当前项目的可用目录中随时调用。

  应用设置

  项目到现在还没有完成,它至少还需要一个应用。先使用 symfony init-app 命令初始化一个应用,用命令后跟的参数去命名这个应用的名称:

  ?

  1

  $ symfony init-app myapp

  这样就在项目的根目录下的 apps/ 文件夹中创建了一个 myapp 目录,其中包含了用于你站点的一个默认应用配置和一组目录文件:

  apps/

  myapp/

  config/

  i18n/

  lib/

  modules/

  templates/

  一些充当各自默认环境中的前端控制器的php文件也被创建在项目根目录的web目录下:

  web/

1.《pake 使用symfony命令创建项目的方法》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《pake 使用symfony命令创建项目的方法》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/jiaoyu/97352.html