우리는 Unirgy의 우수한 uRapidFlow 모듈을 사용하지만 약간의 성가신 문제가 발생했습니다. 프로필 중 하나를 실행하면을 호출 session_write_close
합니다. 이것의 문제는 adminhtml 컨트롤러에서 프로세스를 실행하려는 경우 사용자에게 성공 또는 예외가 있음을 알리기 위해 세션 플래시 메시지를 설정할 수 없다는 것을 의미합니다.
세션 메시지를 추가하기 위해 프로세스가 완료된 후 세션을 다시 시작할 수 있습니까?
처음에는 PHP에서 세션을 다시 시작할 수 있는지 확실하지 않았지만 개념 증명 PHP가 작동합니다.
session_start();
// if this is the second run, show the value
if (!empty($_SESSION['foo'])) {
echo $_SESSION['foo'], PHP_EOL;
}
// set an initial value
$_SESSION['foo'] = 'bar';
// start running profile
session_write_close();
// after running profile
session_start();
// set a value to see if it takes
$_SESSION['foo'] = 'foo';
그래도 adminhtml 세션에서 플래시 메시지를 올바르게 설정할 수 없었습니다. 나는 다음 줄을 따라 뭔가를 부를 수 있다고 생각했다.
Mage::getSingleton('adminhtml/session')
->init('core', 'adminhtml')
->addSuccess('Whoop');
그러나 이것은 작동하지 않는 것 같습니다.
프로파일 실행 중에 고객에게 메시지를 표시하려면 $ pofile-> getLogger ()를 사용하여 로거 인스턴스를 가져 와서 메시지를 전달하십시오. 그것은 페이지에 그것들을 보여주는 것과 같지 않지만, 당신은 그것들을 기록 할 것입니다
—
Petar Dzhambazov