Doctrine을 사용하면 실제로 마법 메서드를 사용하지 않는 속성에 매핑 할 수 있습니까?Doctrine2 마법 메서드로 속성 정의하기
나는 YAML로 매핑을하고 있습니다.
예를 들어, "demo"라는 속성에 매핑하려는 경우 SomeClass :: $ demo가 실제로 존재하지 않았습니다. $ demo (및 getDemo() 및 setDemo())를 처리하고 그 밖의 다른 작업을 수행하려면 __get(), __set(), __isset() 및 __call()을 일부 조합해야합니다.
난이 설정을 시도했지만, 나는 오류 받고 있어요 : 내 마법의 방법을 그리워하는 원인이 ReflectionProperty 특별한 무언가가있는 경우
Uncaught exception 'ReflectionException' with message 'Property My\Bundle\DemoBundle\Entity\SomeClass::$demo does not exist'
잘 모르겠어요를, 또는 아마 내가 마법의 기능을 잃어 버렸다면. 그러나 내가 알 수있는 한, ReflectionProperty는 그것들과 상호 작용해야한다.
아이디어가 있으십니까?
업데이트 : ReflectionProperty 생성자가 예외를 던질 것이다 매직 메서드를 트리거하지 않습니다 같은 추가 조사시
, 그것은 보인다.
Doctrine을 동적 속성에 매핑하는 방법을 알고있는 사람이 있습니까?
감사합니다.
업데이트 2 : 내가 달성하기 위해 노력하고있어 예에
.
기본적으로 나는 실제로 사용자 (역할, 암호, 소금, 사용자 이름 등)를 처리하는 데 필요한 기본 속성을 포함하는 일반 User
개체를 가지고 있습니다. 그러나이 객체를 확장하여 응용 프로그램 및 사용자 별 메타 데이터를 추가 할 수 있기를 원합니다.
포럼 번들을 만듭니다. 그러면 포럼과 함께 사용하기 위해 사용자와 관련된 메타 데이터를 동적으로 연결할 수 있습니다. 나는 User 번들에 직접 넣기를 원하지 않는다. User 번들의 유연성이 떨어지기 때문이다.
어떻게 든 새로운 데이터를 사용자에게 동적으로 주입 할 수 있다면 별도의 쿼리로로드 할 필요없이 사용자에게 단일 쿼리로 모두로드 할 수 있습니다. 나는 이것을 수행 할 다른 방법이 있다는 것을 알고있다. 나는 이미 탐구했고 심지어 제한된 범위까지 사용했다. 그러나 이러한 연관성을 동적으로 만들 수 있다면 훨씬 더 좋을 것입니다. 실제로 이러한 연관성은 도약하기가 어렵지는 않습니다.
왜이 작업을 수행 하시겠습니까? – Phil
자세한 내용은 내 질문에 업데이트되었습니다. – samanime
데이터 레이어가이 문제를 처리하는 방법을 이미지화 할 수 없습니다.왜 단지 여분의 일대일 (one-to-many) 협회를 만들지 않는가? – Phil