sibds / yii2-enterprise
Yii 2 Enterprise Application Template
Installs: 104
Dependents: 0
Suggesters: 0
Security: 0
Stars: 8
Watchers: 2
Forks: 8
Open Issues: 0
Type:project
Requires
- php: >=5.4.0
- bedezign/yii2-audit: *
- cornernote/yii2-dashboard: *
- dektrium/yii2-rbac: dev-master
- dektrium/yii2-user: *
- dmstr/yii2-adminlte-asset: 2.*
- dmstr/yii2-migrate-command: *
- mazurva/yii2-menumodules: dev-master
- yiisoft/yii2: >=2.0.6
- yiisoft/yii2-bootstrap: *
- yiisoft/yii2-swiftmailer: *
Requires (Dev)
This package is auto-updated.
Last update: 2024-11-03 08:24:55 UTC
README
Yii 2 Enterprise Application Template is a skeleton Yii 2 application best for rapidly creating enterprise projects.
Basis on wfcreations/yii2-app-api
Information about develop: https://trello.com/b/9VO2RT9g/yii2-enterprise.
Documentation is at docs/guide/README.md.
REQUIREMENTS
The minimum requirement by this application template that your Web server supports PHP 5.4.0.
DIRECTORY STRUCTURE
common
config/ contains shared configurations
mail/ contains view files for e-mails
models/ contains model classes used in both backend and frontend
console
config/ contains console configurations
controllers/ contains console controllers (commands)
migrations/ contains database migrations
models/ contains console-specific model classes
runtime/ contains files generated during runtime
backend
assets/ contains application assets such as JavaScript and CSS
config/ contains backend configurations
controllers/ contains Web controller classes
models/ contains backend-specific model classes
runtime/ contains files generated during runtime
views/ contains view files for the Web application
web/ contains the entry script and Web resources
api
config/ contains api configurations
controllers/ contains Web controller classes
models/ contains api-specific model classes
runtime/ contains files generated during runtime
modules/ contains api versioning
v1/ contains module version 1
web/ contains the entry script and Web resources
frontend
assets/ contains application assets such as JavaScript and CSS
config/ contains frontend configurations
controllers/ contains Web controller classes
models/ contains frontend-specific model classes
runtime/ contains files generated during runtime
views/ contains view files for the Web application
web/ contains the entry script and Web resources
widgets/ contains frontend widgets
vendor/ contains dependent 3rd-party packages
environments/ contains environment-based overrides
tests contains various tests for the advanced application
codeception/ contains tests developed with Codeception PHP Testing Framework
MODULES INCLUDED
- bedezign/yii2-audit - Records and displays web/cli requests, database changes, php/js errors and associated data.
- dektrium/yii2-user - Flexible user registration and authentication module for Yii2.
- dektrium/yii2-rbac - Yii 2 module that helps managing your RBAC system.
- dmstr/yii2-adminlte-asset - AdminLTE Asset Bundle for Backend Theme.
- dmstr/yii2-migrate-command - Console Migration Command with multiple paths/aliases support.
VIRTUAL MACHINE
Important: Only for testing.
Created on PuPHPet.com.
How to
vagrant up
MailCatcher
Open in browser: http://yii2enterprise.dev:8025/ or http://192.168.56.101:8025/
INSTALLATION
Install from an Archive File
Extract the github archive file to a directory named yii2-enterprise
that is directly under the Web root.
After extraction run
php composer.phar global require "fxp/composer-asset-plugin:~1.1.1"
php composer.phar install
You can then access the application through the following URL:
http://localhost/yii2-enterprise/frontend/web/
Install via Composer
If you do not have Composer, you may install it by following the instructions at getcomposer.org.
You can then install this application template using the following command:
composer global require "fxp/composer-asset-plugin:~1.1.1"
php composer.phar create-project --prefer-dist --stability=dev sibds/yii2-enterprise app
Now you should be able to access the application through the following URL, assuming app
is the directory
directly under the Web root.
http://localhost/app/api/web/
http://localhost/app/backend/web/
http://localhost/app/frontend/web/
CONFIGURATION
Database
Edit the file common/config/db.php
with real data, for example:
return [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbname=yii2-enterprise', 'username' => 'root', 'password' => '123', 'charset' => 'utf8', ];
NOTE: Yii won't create the database for you, this has to be done manually before you can access it.
Also check and edit the other files in the config/
directory to customize your application.
Apply migrations
php yii migrate
Problem with migrations
- Try comment in file
common/config/main.php
the following lines:
'audit' => [
'class' => 'bedezign\yii2\audit\Audit'
],
after migration complition, uncomment these lines.
Enabling JSON Input
To let the API accept input data in JSON format, configure the [[yii\web\Request::$parsers]] property of
the request
application component
to use the [[yii\web\JsonParser]] for JSON input:
'request' => [ 'parsers' => [ 'application/json' => 'yii\web\JsonParser', ] ]
Info: The above configuration is optional. Without the above configuration, the API would only recognize
application/x-www-form-urlencoded
andmultipart/form-data
input formats.
IMPORTANT: without rbac/init you CAN'T LOG IN into backend
Demo user
Login: webmaster
Password: webmaster