0

Install modul admin di yii2

Kalau di yii1, kita bisa menggunakan modul ‘rights’ & ‘user’ untuk Otentikasi dan Otorisasi.
Sedangkan di yii2 kita bisa gunakan modul ‘yii2-admin’.

HASIL MODULE YII2-ADMIN :
Screenshot from 2015-08-09 23:29:19

Tutorial kali ini saya menggunakan linux, so bagi yang mengunakan windows ngga masalah toh tahapannya sama saja. Yuk dimulai!

INSTALL MODULE YII2-ADMIN

1) Masuk dulu ke directory yii2 :

cd /var/www/html/yii2_advanced

2) Install module yii2-admin melalui composer

– Untuk yang pakai windows, saya asumsikan Anda sudah menginstall composer, jika belum ikuti tutorial ini (tahap 1,2,3)

Untuk menginstall modul yii2 admin, Anda harus punya file composer.phar di dalam folder yii2 :
composer phar yii2

Jika belum punya, install dengan script dibawah :

php -r "readfile('https://getcomposer.org/installer');" | php

 
Untuk mengistall module yii2-admin, ketik script dibawah :

php composer.phar require mdmsoft/yii2-admin "dev-master"

Proses penginstallannya :
mdmsoft yii2 admin

Problem 1
– Jika saat penginstalan Anda diminta memasukkan token, “Token (hidden)” seperti gambar dibawah :
enter token hidden yii2 composerItu tandanya Anda harus membuat token dari github dulu.
Caranya :
a) Buat akun github.com kemudian login.
b) Buka link https://github.com/settings/tokens
c) Klik Generate new token
generate new token
d) Buat token dengan pengaturan seperti ini :
description tokene) Setelah itu akan tercipta sebuah token :
token has been generatedf) Sekarang tinggal create token di composer, copy script di bawah ke command prompt :
[php]composer self-update[/php] [php]composer config -g github-oauth.github.com 23b8a7809e368788c4268b599ddaf486b2f764ef[/php] g) Setelah itu install lagi modul yii2-admin
Problem 2
– Jika muncul error [css]Call to undefined method Fxp\Composer\AssetPlugin\Package\Version\VersionParser::parseLinks() in /home/john/.composer/vendor/fxp/composer-asset-plugin/Repository/VcsPackageFilter.php on line 272[/css] – Uninstall composer Anda
– Install lagi composer
– Install kembali modul yii2-admin

Setelah berhasil diinstall, maka akan terdapat sebuah folder ‘mdmsoft’ di folder vendor.
Setiap modul/ektensi yang kita install maka akan masuk ke folder ‘vendor’.
location mdmsoft yii2 admin

KONFIGURASI

Tahap selanjutnya kita perlu beberapa konfigurasi agar modul yii2-admin dapat berjalan.
Buka file /common/config/main-local.php, copy script dibawah ini :

<?php
return [
	'modules' => [
		'admin' => [
            'class' => 'mdm\admin\Module',
            'layout' => 'left-menu', // avaliable value 'left-menu', 'right-menu' and 'top-menu'
            'controllerMap' => [
                 'assignment' => [
                    'class' => 'mdm\admin\controllers\AssignmentController',
                    'userClassName' => 'common\models\User',
                    'idField' => 'id'
                ]
			],
		]
		.....
	],
    'components' => [
		.....
        'authManager' => [
            'class' => 'yii\rbac\DbManager', // or use 'yii\rbac\DbManager'
        ],
        .....         
    ],
];

configurate of yii2

CREATE TABLE

Setelah melakukan konfigurasi, selanjutnya adalah meng-generate table yang sudah disediakan oleh modul yii2-admin. Oya, pada tahap ini yii harus sudah terhubung ke database ya.
migrations yii2

 
Langkah-langkahnya adalah sebagai berikut :
1) Pertama, kita akan menggenerate 2 tabel (menu & migration), copy script dibawah :

php yii migrate --migrationPath=@mdm/admin/migrations

Screenshot from 2015-08-07 10:54:33

2) Kedua, menggenerate 4 tabel (auth_assignment, auth_item, auth_item_child, auth_rule), copy script berikut :

php yii migrate --migrationPath=@yii/rbac/migrations

Screenshot from 2015-08-09 23:26:49

TEST MODUL

Sekarang module yii2-admin sudah siap digunakan. Untuk dapat mengaksesnya bisa menggunakan link berikut :

http://localhost/your_yii/backend/web/index.php?r=admin
http://localhost/your_yii/backend/web/index.php?r=admin/route
http://localhost/your_yii/backend/web/index.php?r=admin/permission
http://localhost/your_yii/backend/web/index.php?r=admin/menu
http://localhost/your_yii/backend/web/index.php?r=admin/role
http://localhost/your_yii/backend/web/index.php?r=admin/assignment

admin module yii2

Jika terdapat error seperti ini :

SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘yii_admin.user’ doesn’t exist
The SQL being executed was: SELECT COUNT(*) FROM `user`

Screenshot from 2015-08-09 23:27:52

Itu tandanya anda belum punya tabel user. Solusinya buat tabel user dengan script dibawah ini :

php yii migrate --migrationPath=console/migrations

console migration yii2

Coba buka modul yii2-admin lagi .. dan taraaa!
Screenshot from 2015-08-09 23:29:19

Ambar Hasbiyatmoko

Hello, I'm web developer. Passionate about programming, web server, and networking.

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload the CAPTCHA.