문제

Codeiginter를 PHP 프레임 워크로 사용하고 있습니다. 아래 상황을 설명하고 있습니다 : -

다음과 같은 세 가지 모델이 필요합니다. -

  • user_model
  • 관계_model
  • REMINDER_MODEL

이제 상황을 고려하십시오.

User_Model 이미 작성되었습니다. 나는 쓰고있다 Relation_Model. 내 친구가 쓸 것입니다 Reminder_Model.

Relation_Model 인스턴트 User_Model, 그리고 그 방법 중 하나에서 그것을 사용합니다. getRelation($userID)

Reminder_Model 또한 하나를 인스턴스화합니다 User_Model 기능에 대한 인스턴스.

Reminder_Model 전화가 필요합니다 getRelation 관계 _model의 방법.

따라서 적어도 두 가지 인스턴스가 있어야합니다. User_Model. 하나에 Relation_Model, 또 다른 Reminder_Model.

문제는 어떻게 보장 하는가입니다 내부에 Relation_Model, 내 User_Model 인스턴스는 User_Model 내 친구의 사례 Reminder_Model 수업?

즉, 코드 Reminder_Model, 내 친구는 내부 지식이 없어야합니다 Relation_Model, 그 방법 중 하나를 사용하기 위해 getRelation.

reminder_model (user-a)에 로그인 한 사용자의 모델을로드하면 relate_model은 사용자 A 팀 구성원 인 사용자 모델과 함께 작동합니다.

도움이 되었습니까?

해결책

왜 당신이 user_model 클래스의 동일한 인스턴스를 사용할 수 없는지 이해하지 못하지만, 일반적인 오래된 구식으로 한 번 모델을 두 번로드 할 수 있습니다. $ this-> load-> model ( 'user_model') 그리고 두 번째 $ this-> load-> model ( 'use_model', 'second_user_model') 도움이 될 것입니다. 또는 당신은 할 수 있습니다 클론 물체와 같은 $ this-> second_user_model = clone $ this-> user_model.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top