XE3
관리자페이지 회원목록에서 새로운 기능을 넣는다면 어떻게 해야 할까요?
예를들어서 선택한 회원의 정보를 엑셀로 다운로드 하는 기능을 만든다면
회원목록은 web.php에서
/*
* settings/user
* */
Route::settings(
'user',
function () {
Route::group(['middleware' => ['admin']], function() {
// index
Route::get(
'/',
[
'as' => 'settings.user.index',
'uses' => 'User\Settings\UserController@index',
'settings_menu' => 'user.list',
'permission' => 'user.list'
]
);
위 내용에 따라 User\Settings\UserController@index 메소드를 실행하고
user.settings.user.index 해당 경로의 블레이드 파일을 렌더링 하는 것으로 보여집니다.
문제는 회원의 엑셀정보를 다운로드 하기 위해선 view파일에 엑셀을 다운로드 하는 버튼을 넣어야 할 것인데 이렇게 되면
resources\views\user\settings\user\index.blade.php 파일을 수정 혹은 별도파일을 작성해야 합니다. (블레이드 파일에 끼어들 수 있는 hook이 없으므로)
또한 만약에 해당 view에 데이터를 추가하고자 한다면 UserController@index 메소드까지 변경해야 할 것입니다. (해당 메소드는 인터셉트 등록되어 있지 않음)
결국 route단계에서 별도의 CustomController@index 를 실행하도록 변경해야 할 듯 싶은데 web.php를 직접 수정하면 차후 문제가 있을것 같습니다.
어떤 방법이 좋을지 답을 찾지 못하고 있습니다..ㅠ
도움 부탁드립니다!
++ 추가
route를 덮어씌우는 방식의 경우에 문제가 있는데 이렇게 처리하면 회원목록에 기능을 추가하는 다른 플러그인과의 호환성이 전혀 없을것으로 보입니다.
어떻게 해야 써드파티 플러그인과 호환성을 가지면서 새로운 기능을 넣을 수 있을까요? 현재 시스템에선 불가능한가요?
0개 댓글