이 문제를 처리하는 유일한 방법은 모델 테이블을 "허용되지 않는"섹션에 추가하는 것이지만이 방법으로 도처에 백엔드 데이터 세트를 수정할 수있는 기능도 제거됩니다.
파일 : : 방법 : \ TYPO3 \ CMS \ 코어 \ DataHandling \ DataHandler에 :: copyPages이 $copyTablesArray
에서 설정
$copyTablesArray = $this->admin ? $this->compileAdminTables() : explode(',', $this->BE_USER->groupData['tables_modify']);
// If not all tables are allowed then make a list of allowed tables: That is the tables that figure in both allowed tables AND the copyTable-list
if (!strstr($this->copyWhichTables, '*')) {
foreach ($copyTablesArray as $k => $table) {
// Pages are always going...
if (!$table || !\TYPO3\CMS\Core\Utility\GeneralUtility::inList(($this->copyWhichTables . ',pages'), $table)) {
unset($copyTablesArray[$k]);
}
}
}
모든 테이블이 될 것입니다 (TYPO3 6.0) 왜 여기
입니다 복사 됨. 현재 로그인 한 사용자가 관리자가 아닌 경우 $this->BE_USER->groupData['tables_modify']
으로 설정됩니다.
이 메서드의 다른 구현을 추가하면이 문제를 처리 할 수 있지만 그다지 쉬운 방법은 아닙니다.
레일즈에서 모델이나 개체 관찰자의 after_create 후크에서 복사를 실행하고 개체가 지속되기 전에 단순히 has_many 연결을 지우면됩니다. TYPO3에 비슷한 것이 있습니까? 문제가되는 TYPO3 버전은 6.0이 아니라 4.5입니다. 나는 이미 몇 가지 차이점이 있다고 생각했다. BTW : 데이터 세트는 백엔드에서 수정되지 않지만 TYPO3은 너무 느리므로 (30 초 이상 백엔드 페이지로드 당) 이러한 데이터 세트의 편집을 처리하는 다른 프레임 워크로 프록시 처리됩니다. – hurikhan77