9. plugin.php - 필수 요소1
9
<?php
namespace Akasima;
use …;
class Plugin extends AbstractPlugin
{
/**
* 이 메소드는 활성화(activate) 된 플러그인이 부트될 때 항상 실행됩니다.
*
* @return void
*/
public function boot()
{
}
12. 12
<?php
abstract class AbstractPlugin
{
public static function getId()
public static function getIdWith($postfix =
'', $delimiter = '::')
public function activate($installedVersion =
null)
public function deactivate($installedVersion
= null)
public function install()
public function
checkInstall($installedVersion = null)
public function update($installedVersion =
null)
public function checkUpdate($currentVersion =
null)
public function uninstall()
abstract public function boot();
public function getSettingsURI()
public static function getPath($path = '')
public static function asset($path, $secure =
40. 40
class Manual extends AbstractModule
{
public static function boot()
{
Route::instance(self::getId(), function () {
Route::get('', ['as' => 'index', 'uses' =>
'UserController@index']);
Route::get('/edit', ['as' => 'edit', 'uses' =>
'UserController@edit']);
Route::post('/update', ['as' => 'update', 'uses' =>
'UserController@update']);
}, ['namespace' => 'Akasima']);
}
Routing 등록
41. 41
namespace Akasima;
use AppHttpControllersController;
class UserController extends Controller
{
public function index()
{
return Presenter::make('my_plugin::views.manual.index');
}
public function edit()
{
return 'edit';
}
public function update()
{
return 'update';
}
}
Routing 등록
UserController.php