PHP code example of itstructure / yii2-admin-module
1. Go to this page and download the library: Download itstructure/yii2-admin-module library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
itstructure / yii2-admin-module example snippets
use Itstructure\AdminModule\Module;
use Itstructure\AdminModule\components\AdminView;
'modules' => [
'admin' => [
'class' => Module::class,
'viewPath' => '@app/views/admin',
'controllerMap' => [
'catalog' => CatalogController::class,
],
'accessRoles' => ['admin', 'manager'],
'components' => [
'view' => [
'class' => AdminView::class,
'skin' => AdminView::SKIN_GREEN_LIGHT,
'bodyLayout' => AdminView::LAYOUT_SIDEBAR_MINI,
'mainMenuConfig' =>
[
'menuItems' => [
'catalog' => [
'title' => 'Catalog',
'icon' => 'fa fa-database',
'url' => '#',
'subItems' => [
'subitem' => [
'title' => 'Subcatalog',
'icon' => 'fa fa-link',
'url' => '/admin/catalog',
]
]
],
'otheritem' => [
'title' => 'Other Item',
'icon' => 'fa fa-database',
'url' => '/admin/otheritem',
],
],
]
[
FirstExtraAsset::class,
SecondExtraAsset::class,
]
[
[
'class' => FirstExtraAsset::class,
],
[
'class' => SecondExtraAsset::class,
],
]
use Itstructure\AdminModule\Module;
use Itstructure\AdminModule\components\AdminView;
'modules' => [
'admin' => [
'class' => Module::class,
'viewPath' => '@app/views/admin',
'controllerMap' => [
'catalog' => CatalogController::class,
],
...
...
'isMultilanguage' => true,
],
],
use Itstructure\AdminModule\Module;
'modules' => [
'admin' => [
'class' => Module::class,
],
],
$application = new yii\console\Application($config);
\Yii::setAlias('@admin', $application->getModule('admin')->getBasePath());
$exitCode = $application->run();
use Itstructure\AdminModule\Module;
$application = new yii\console\Application($config);
\Yii::setAlias('@admin', Module::getBaseDir());
$exitCode = $application->run();
protected function getModelName():string
{
return Catalog::class;
}
protected function getSearchModelName():string
{
return CatalogSearch::class;
}
use Itstructure\AdminModule\models\MultilanguageTrait;
class Catalog extends ActiveRecord
{
use MultilanguageTrait;
...
use Itstructure\FieldWidgets\Fields.php;
$form = ActiveForm::begin();
echo Fields::widget([
'fields' => [
[
'name' => 'title',
'type' => FieldType::FIELD_TYPE_TEXT,
],
[
'name' => 'description',
'type' => FieldType::FIELD_TYPE_TEXT_AREA,
],
],
'model' => $model,
'form' => $form,
'languageModel' => new Language()
])
Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary'])
ActiveForm::end();
use Itstructure\AdminModule\Module;
use Itstructure\AdminModule\components\AdminView;
use Itstructure\AdminModule\components\MultilanguageValidateComponent;
'modules' => [
'admin' => [
'class' => Module::class,
'viewPath' => '@app/views/admin',
'controllerMap' => [
'catalog' => CatalogController::class,
...
],
'isMultilanguage' => true,
'components' => [
'view' => [
'class' => AdminView::class,
'skin' => AdminView::SKIN_GREEN_LIGHT,
'bodyLayout' => AdminView::LAYOUT_SIDEBAR_MINI,
'mainMenuConfig' => * Field dynamicFields needs to have: 'name' - field name.
* Field dynamicFields (not necessary) may have 'rules'.
*/
'models' => [
Catalog::tableName() => [
'dynamicFields' => [
[
'name' => 'title',
'rules' => [
[
' ]
],
],
]
]
]
],
]
]