2011-12-18 3 views
0

깊은 관계를 인스턴스화되지 않습니다객체는이 예제에서 CodeIgniter의 DataMapper ORM

http://datamapper.wanwizard.eu/pages/getadvanced.html#Deep.Relationship.Include

당신이 말하는 것을 볼 수 있습니다 이 때, 깊은 관계가 instatiation을 지원하지 않습니다..

우리가 그룹 모델에서 정의 된 몇 가지 메소드를 가지고 있다면 우리는 수동으로 필드 데이터를 수집하고 그룹 객체를 직접 인스턴스화하지 않으면 여전히 사용할 수 없습니다.

내가 왜 지원되지 않는지에 관심이 있습니다. ORM을 위해 달성하기가 어려운 것이 있습니까?

또한 쉬운 해결 방법이 있는지 또는이 문제를 어떻게 해결했는지 알고 싶습니다.

+0

@Lion 죄송합니다. 나는 그 규칙에 대해 잊어 버렸으므로 오랫동안 그렇게 방문하지 않았다. – bobo

답변

1

include_related()를 사용할 때 관련 객체를 인스턴스화 할 수 있지만 include_related ('groups/users/posts/comments')와 같이 깊은 관계를 인스턴스화 할 수는 없으며 코드는 지원하지 않습니다.

DataMapper는 몇 년 동안 사용되어 왔으며 현재 v1.x 코드베이스는 여전히 CodeIgniter 1.7을 지원합니다. PHP4 레거시 코드가 상당량 들어 있음을 의미합니다.

이 문제를 해결할 DataMapper v2를 설계하는 중입니다.

+0

감사. 희망 당신은 질병에서 회복되었습니다 :) – bobo