2017-11-17 2 views
0

XML 인터페이스에서 오는 DataRecord를 나타내는 일부 도메인 모델 개체를 만들었습니다. 이러한 객체를 다양하게 유지하기 위해 자체 Object-Property-Model => 레코드를 사용하여 __construct 중에 동적 속성을 사용하여 설정합니다.이 옵션을 사용하면 간단한 Backend-Module을 통해 속성을 추가 할 수 있습니다. 내 문제는 그 속성에 대한 TCA 설정 (열 등)을 동적으로 생성하고 싶습니다. 사용할 수있는 열에 대한 데이터 유형과 같은 필요한 정보가 있습니다. - TCA 파일에서 함수를 설정하고, DB-Connection-Pool을 통해 데이터를 읽거나, 동적 데이터를 기반으로 열 데이터를 확장하기 위해 저장소에서 오는 레코드를 사용할 수 있습니까? 감사합니다. OliverTYPO3 : 동적 도메인 모델 속성의 자동 TCA 생성

답변

1

TCA overrides 또는 신호가 ExtensionManagementUtility에서 방출 될 수 있습니다.

autoloader의 스마트 오브젝트와 비슷한 기능을 수행하는 확장 프로그램을 살펴볼 수도 있습니다. 같은 질문으로 실행할 수 있습니다 사람들을 위해

+0

새 신호를 주셔서 감사합니다. 이전에는 그 사실을 알지 못했습니다. – Oliver

+0

PersistenceManager's persistAll()을 호출하기 전에 관련 컨트롤러에서 직접 $ GLOBALS [ 'TCA']를 직접 수정하는 것이 좋지 않다고 생각하십니까? – Oliver

+1

이것은 사용자 고유의 워크 플로에 따라 다릅니다. TYPO3는 TCA 오버라이드 또는 슬롯에서 수행하는 작업에 신경을 쓰지 않습니다. 기본적으로 당신은 당신이 다른 장소 나 방법으로 이것을 사용하고 싶은지에 대해서 생각할 필요가 있습니다. –

0

그냥 몇 가지 추가 정보 : 당신은 등 어떤 REPO/컨트롤러 /를 사용할 수있다

. TCA/PHP의 PHP 파일에서 TYPO3-objectManager를 인스턴스화하여 수동으로 원하는 초기화 클래스를 얻을 수 있습니다. 원하는 데이터 (Object-Proberties/Tabledata, 무엇이든)를 얻으면 바로 $ GLOBALS [ 'TCA'] [ '']를 직접 무시할 수 있습니다. 이렇게하면 수정 가능한 속성이있는 동적 모델을 빌드 할 수 있습니다. 이제 동적 모델의 지속적인 레코드가 보관되는 테이블에 대해 db-table 및 extension sql-file의 자동 수정에 대해 어떻게 신경 쓸 수 있는지 확인해야합니다.