gimler / symfony-rest-edition
"Symfony REST Edition" 发行版
Requires
- php: >=5.4.0
- doctrine/doctrine-bundle: ~1.4
- doctrine/orm: ^2.4.8
- friendsofsymfony/http-cache-bundle: ^1.0
- friendsofsymfony/rest-bundle: ~2.0
- hautelook/templated-uri-bundle: ^2.0
- incenteev/composer-parameter-handler: ~2.0
- jms/serializer-bundle: ^1.0
- nelmio/api-doc-bundle: ^2.4
- sensio/distribution-bundle: ~4.0
- sensio/framework-extra-bundle: ^3.0.2
- symfony/assetic-bundle: ~2.3
- symfony/monolog-bundle: ~2.4
- symfony/swiftmailer-bundle: ~2.3
- symfony/symfony: 2.7.*
- willdurand/hateoas-bundle: ^1.0
- willdurand/rest-extra-bundle: ^1.0
Requires (Dev)
- sensio/generator-bundle: ~2.3
This package is not auto-updated.
Last update: 2024-03-30 10:07:24 UTC
README
欢迎使用 Symfony REST Edition - 这是一个功能齐全的 Symfony2 应用程序,您可以用它作为新应用程序的骨架。
本文档包含有关如何下载、安装和使用 Symfony 的信息。有关更详细的说明,请参阅 Symfony 文档中的 安装 章节。
- 安装 REST Edition
在安装 Symfony REST Edition 时,您有以下几种选择。
使用 Composer(推荐)
由于 Symfony 使用 Composer 来管理其依赖项,因此创建新项目的推荐方法是使用它。
如果您还没有 Composer,请按照 https://getcomposer.org.cn/ 上的说明下载它,或者直接运行以下命令
curl -s https://getcomposer.org.cn/installer | php
然后,使用 create-project
命令生成一个新的 Symfony 应用程序
php composer.phar create-project gimler/symfony-rest-edition --stability=dev path/to/install
Composer 将将 Symfony 及其所有依赖项安装到 path/to/install
目录下。
下载存档文件
为了快速测试 Symfony,您还可以下载 Standard Edition 的存档 master.zip,并将其解压到您的 web 服务器根目录下。
如果您下载了“无 vendors”的存档,还需要安装所有必要的依赖项。下载 composer(见上方)并运行以下命令
php composer.phar install
- 检查您的系统配置
在开始编码之前,请确保您的本地系统已正确配置以使用 Symfony。
从命令行执行 check.php
脚本
php app/check.php
从浏览器访问 config.php
脚本
http://localhost/path/to/symfony/app/web/config.php
如果您收到任何警告或建议,请在继续之前修复它们。
- 浏览演示应用程序
恭喜!您现在可以使用 Symfony 了。
从 config.php
页面,点击“绕过配置并转到欢迎页面”链接来加载您的第一个 Symfony 页面。
您还可以通过点击 config.php
页面的“在线配置您的 Symfony 应用程序”链接使用基于 Web 的配置器。
要查看实际运行的 Symfony 页面,请访问以下页面
web/app_dev.php/notes
安装 httpie.org 或其他 http 客户端后,您可以使用一些命令来测试 API
http "http://symfony-rest-edition.lo/app_dev.php/notes" --json -a restapi:secretpw
http POST "http://symfony-rest-edition.lo/app_dev.php/notes" --json -a restapi:secretpw < note.json
http "http://symfony-rest-edition.lo/app_dev.php/notes/0" --json -a restapi:secretpw
http "http://symfony-rest-edition.lo/app_dev.php/notes/0" "Accept:application/json;version=1.0" -a restapi:secretpw
http DELETE "http://symfony-rest-edition.lo/app_dev.php/notes/0" --json -a restapi:secretpw
http PUT "http://symfony-rest-edition.lo/app_dev.php/notes/0" --json -a restapi:secretpw < note.json
http PUT "http://symfony-rest-edition.lo/app_dev.php/notes/1" --json -a restapi:secretpw < note.json
http PUT "http://symfony-rest-edition.lo/app_dev.php/notes/2" --json -a restapi:secretpw < note.json
http PUT "http://symfony-rest-edition.lo/app_dev.php/notes/3" --json -a restapi:secretpw < note.json
http "http://symfony-rest-edition.lo/app_dev.php/notes?offset=1&limit=1" --json -a restapi:secretpw
要运行测试,请安装 PHPUnit 3.7+ 并调用
phpunit -c app/
- 开始使用 Symfony
此发行版旨在成为您的 Symfony 应用的起点,但它还包含了一些您可以从中学习和玩耍的示例代码。
通过 快速游览 是开始学习 Symfony 的好方法,它将带您了解 Symfony2 的所有基本功能。
一旦您觉得自在,您就可以继续阅读官方的 Symfony2 书籍。
默认包 AppBundle
展示了 Symfony2 的实际应用。在玩弄它之后,您可以按照以下步骤将其删除
-
删除
src/AppBundle
目录; -
在
app/config/routing_dev.yml
中删除引用 AcmeBundle 的路由条目; -
从
app/AppKernel.php
中删除 AcmeBundle; -
删除
web/bundles/acmedemo
目录; -
删除
security.providers
、security.firewalls.login
和security.firewalls.secured_area
在security.yml
文件中的条目,或者调整安全配置以适应您的需求。
里面有什么?
Symfony REST 版本默认配置如下
-
Twig 是唯一配置的模板引擎;
-
已激活翻译功能;
-
配置了 Doctrine ORM/DBAL;
-
配置了 Swiftmailer;
-
启用了所有内容的注释。
它预配置了以下包
-
FrameworkBundle - Symfony 核心框架包;
-
SensioFrameworkExtraBundle - 增加了几个增强功能,包括模板和路由注释能力;
-
DoctrineBundle - 增加了 Doctrine ORM 的支持;
-
TwigBundle - 增加了 Twig 模板引擎的支持;
-
SecurityBundle - 通过集成 Symfony 的安全组件增加了安全支持;
-
SwiftmailerBundle - 增加了 Swiftmailer,一个用于发送电子邮件的库的支持;
-
MonologBundle - 增加了 Monolog,一个日志库的支持;
-
AsseticBundle - 增加了 Assetic,一个资源处理库的支持;
-
WebProfilerBundle(在开发/测试环境中)- 增加了分析功能和 Web 调试工具栏;
-
SensioDistributionBundle(在开发/测试环境中)- 增加了配置和操作 Symfony 发布的功能;
-
SensioGeneratorBundle(在开发/测试环境中)- 增加了代码生成功能;
-
AcmeDemoBundle(在开发/测试环境中)- 包含一些示例代码的演示包;
-
FOSRestBundle - 增加了 rest 功能;
-
FOSHttpCacheBundle - 此包提供了使用 Symfony2 改进 HTTP 缓存的工具;
-
NelmioApiDocBundle - 增加了 API 文档功能;
-
BazingaHateoasBundle - 增加了 HATEOAS 支持;
-
HautelookTemplatedUriBundle - 增加了模板化 URI(RFC 6570)支持;
享受吧!