dezmont765 / yii2-rbac-advanced-template
Yii 2 Advanced Application Template With Rbac
Installs: 345
Dependents: 0
Suggesters: 0
Security: 0
Stars: 4
Watchers: 4
Forks: 4
Open Issues: 1
Type:project
Requires
- php: >=5.4.0
- bower-asset/ckeditor: 4.*
- dezmont765/yii2-grid-view-library: dev-master
- yiisoft/yii2: *
- yiisoft/yii2-bootstrap: *
- yiisoft/yii2-swiftmailer: *
- zyx/zyx-phpmailer: dev-log-fix
Requires (Dev)
This package is not auto-updated.
Last update: 2025-02-01 18:18:07 UTC
README
yii2-advanced-template-rbac is based on yii2-app-advanced created by yii2 core developers. There are several upgrades made to this template.
The template includes three tiers: front end, back end, and console, each of which is a separate Yii application.
The template is designed to work in a team development environment. It supports deploying the application in different environments.
Also it includes nice user management system in backend, and custom layout system.
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
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
REQUIREMENTS
The minimum requirement by this application template that your Web server supports PHP 5.4.0.
INSTALLATION
Install via Composer
If you do not have Composer, you may install it by following the instructions at getcomposer.org.
You can then install the application using the following command:
php composer.phar global require "fxp/composer-asset-plugin:1.1.2" php
composer.phar create-project --prefer-dist dezmont765/yii2-rbac-advanced-template
GETTING STARTED
After you install the application, you have to conduct the following steps to initialize the installed application. You only need to do these once for all.
- Run command
php init
to initialize the application with a specific environment. - Create a new database and adjust the
components['db']
configuration incommon/config/common-local.php
accordingly. - Apply migrations with console command:
php yii migrate
. This will create tables needed for the application to work; - Run command
php yii rbac/init
to install necessary RBAC rules in DB - Set document roots of your Web server:
- for frontend
/path/to/yii-application/frontend/web/
and using the URLhttp://frontend/
- for backend
/path/to/yii-application/backend/web/
and using the URLhttp://backend/
If you want to use the application you'll need to register in the system using frontend user interface. You can register into the system using any valid email address and any password.
There are 3 types of users available for you in system: super_admin
, admin
and user
.
This types of users can be simply changed by editing the role field in user table, or via admin user interface in backend.
When you register the first user in the system, his role is set to user
by default.
Notice that user
have no access to backend, so you'll have to change his role to admin
or super_admin
in the DB manually.
Once, you enter the backend, you will see a simple but powerful user-management page where you can CRUD users, as you wish.Also there you can find Manage Email Templates page, where you can create your own email templates, and then simply use it, like static email templates:
Yii:$app->mailer->composer('your_email_template_name',$params) .
See "email-verification" template for example .