2014-09-16 2 views
1

제 3 자 데이터베이스에서 "삭제됨"이라는 열 이름이 있습니다 (변경할 수 없음). propel을 사용하여 객체 모델을 생성하면 자체 사용을 위해 "$ deleted"라는 속성이있는 기본 클래스가 생성됩니다. 그런 다음 "삭제됨"열을 "$ deleted"라고도하는 속성으로 추가합니다. 쿼리를 실행하려고하면 "Base \ myClass :: $ deleted"를 다시 선언 할 수 없습니다.라는 오류가 발생합니다. Propel이 데이터베이스 열과 동일한 이름의 속성을 가진 Base 객체를 생성하는 것을 어떻게 막을 수 있습니까? schema.xml에서이 작업을 수행 할 수있는 방법이 있습니까? phpNamingMethod 특성을 사용하려고했지만 멤버 변수가 아닌 메서드 이름 만 변경합니다.ORM을 "deleted"라는 열 이름으로 바꿉니다

이것은 모든 자료 개체의 추진에 의해 생성된다 : 이것은 내의 schema.xml 파일에서 생성되는

/** 
    * attribute to determine whether this object has been deleted. 
    * @var boolean 
    */ 
    protected $deleted = false; 

:

/** 
    * The value for the deleted field. 
    * @var  int 
    */ 
    protected $deleted; 

답변

1

가 그냥 다른 phpName을 정의합니다.

+0

phpName을 "entityDeleted"로 변경했지만 멤버 변수 $ deleted가 계속 호출됩니다. 멤버 변수로 열 이름을 사용하고 있다고 생각합니다. – Asagohan

+0

예. 지금은 불가능합니다. 이를위한 쉬운 해결책은 없습니다. –

관련 문제