묻고답하기
Laravel에서 xe의 context에 접근하는 것이 가능할까요?
2015.09.13 02:59
xe에서 모듈로 구현해둔 것을 Laravel 기반으로 다시 만들고 있습니다. 다만 로그인 정보라든지 기타 Context에 접근이 필요한데 이것이 가능할까요?
현재까지 제가 해본 것은 xe의 context를 관리하는 컨트롤러를 만들고 다음과 같은 constructor와 destructor를 만들어 두었는데
---
class XEContextController extends Controller
{
public function __construct()
{
define('__XE__', true);
require_once('/path/to/xe/config/config.inc.php');
$oContext = &\Context::getInstance();
$oContext->init();
}
public function __destruct()
{
$oContext->close();
}
---
FatalErrorException in func.inc.php line 206: Call to a member function executeQuery() on null
에러가 발생합니다. 아무래도 Laravel은 namespace가 잘 적용되어 있지만 xe의 경우는 그렇지 않아서 발생하는 문제같기도 한데 혹시 좋은 방법이 없을까요?
댓글 4
-
YJSoft
2015.09.13 07:30
-
jdssem
2015.09.13 09:26
@YJSoft 님 말씀은 코어를 수정하기 전에는 그것이 어렵다는 말씀이신거죠? xe3가 나오기 전에 미리 대응했다가 자연스럽게 넘어가고 싶어서 그런 것인데 조금 더 기다려봐야겠네요. 답변 감사드립니다!! -
기진곰
2015.09.13 19:38
단지 로그인 정보가 필요한 거라면 $_SESSION에서 member_srl 값을 직접 읽어들인 후, 해당 회원정보를 xe_member 테이블에서 직접 쿼리하여 불러와도 됩니다. 물론 좀더 복잡한 작업이 필요하다면 이런 식으로는 곤란하겠지만요.
-
jdssem
2015.09.14 08:40
그런 방법도 있겠네요. 답변 감사드립니다^^
XE3가 Laravel 기반이니, 조금 기다리셨다가 11월쯤 출시되면 XE3로 연동 프로그램을 작성하시는게 더 나을 것 같습니다. 물론 XE1을 수정하시면 되겠지만 2개월 뒤면 XE3가 출시되는 상황에서 라라벨 연동에 맞게 XE1을 수정하시는건 비추천드립니다.