evercode/symfony-skeleton
最新稳定版本:2.6.0
Composer 安装命令:
composer create-project evercode/symfony-skeleton
包简介
The "Symfony Evercodelab Edition" skeleton with basic configuration
README 文档
README
Рады представить вам Symfony EvercodeLab Edition, нашу небольшую доработку для Symfony Standard Edition, призванную ускорить процесс начала разработки нового приложения.
Кроме стандартных компонентов Symfony2 в данный вариант включены некоторые дополнительные пакеты, которые мы обычно используем в своей работе:
- GedmoDoctrineExtensions — расширение возможностей Doctrine. Добавляет такие полезные штуки как Timestampable (добавляет время создания, обновления), Tree (добавляет возможность работы с деревьями).
- SonataAdminBundle — административный интерфейс для Symfony
- KnpMenuBundle — генерация меню
- KnpPaginatorBundle — создание пагинации
- FosUserBundle — управление пользователями
- FOSRestBundle — данный бандл предоставляет набор инструментов для быстрой разработки RESTful API и приложений
- DoctrineFixturesBundle — управление фикстурами
- DoctrineMigrationsBudnle — управление миграциями
- LiipImagineBundle — бандл для работы с изображениями
- VichUploaderBundle — значительно облегчает с загрузкой файлов и последующего отображения этих файлов
Установка
Для установки можно воспользоваться несколькими возможностями. Первая из них воспользоваться composer:
composer.phar create-project evercode/symfony-skeleton path/
Вторая возможность это воспользоваться клонированием с github:
git clone git@github.com:EvercodeLab/symfony-skeleton.git path/
В обоих случаях path это путь, куда будет устанавливаться новый проект.
Следующие действия идентичны для обоих вариантов, нам необходимо запустить установочный скрипт, который сделает за нас большую часть работы:
bin/setup
Скрипт выполняет следующие действия:
- Создает необходимые директории (
app/cacheиapp/logs) и выставляет необходимые права на них (в этом месте установочный скрипт может запросить у вас пароль дляsudo, так как установка прав на папки идет от имени администратора) - Скачивается, если необходимо, composer, после чего происходит установка необходимых пакетов.
- Создается база данных и прогоняются необходимые действия для придание ей рабочего вида (миграции и загрузка фикстур), в базовом варианте — создаются таблицы от FosUserBundle и загружается тестовый пользователь.
Всё, теперь наш проект готов к работе!
Запуск проекта с использованием встроенного сервера php
Для этого просто запускаем команду:
bin/start
после этого проект обновится (если есть что обновлять), после чего будет запущен
тестовый сервер с адресом http://localhost и диапазоном портов от 8000 до 8010,
в зависимости от того, какие порты уже заняты, а какие свободны.
Тестирование
Для тестирования мы используем Behat + Mink. Тут опять же все просто.
Тесты располагаются в папочке features, и запускаются командой bin/behat.
Вот в общем то и всё. Для лучшего понимания работы с Behat лучше всего обратится
к документации на официальном сайте.
Так же для используем phpspec для спеков (на самом деле надо понимать, что мы используем их как юнит тесты, только тссссс!).
Деплой
Для деплоя мы используем capifony. Для того что бы
он работал, нам надо внести необходимые изменения в конфигурационный файл
deploy.rb.
Нюансы
Если мы использем nginx для сервера, то в некоторых случах нам необходимо внести изменения в его конфигурацию
# Your virtual host server { ... location ~ ^/(app|app_dev|apc-.*)\.php(/|$) { { # This will allow accelerator cache (apc-{MD5HASH}.php) files to be processed by fpm fastcgi_pass 127.0.0.1:9000; ...
If you are using nginx and limiting PHP scripts that you are passing to fpm you need to allow 'apc' prefixed php files. Otherwise your web server will return the requested PHP file as text and the system won't be able to clear the accelerator cache.
统计信息
- 总下载量: 215
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 13
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2012-11-12