2016-09-02 6 views
0

아래 사용자 표가 있습니다.팔콘 열 이름 접두사

enter image description here팔콘에서는 모든 모델 관련 프로세스를 실행할 때 모든 접두사 이름을 제거 할 수 있도록 열 이름을 매핑 할 수 있습니까? YII에서는 이것이 가능합니다. 그렇게

$user->id will point to $user->tbl_user_id; 
$user->fullname will point to $user->tbl_user_fullname; 
$user->phone will point to $user->tbl_user_phone; 

나는 당신이 getSource와를 지정할 수있는 모델부터 테이블 이름을 호출 아무런 문제가 없다, 말할 수(). 나는 칼럼 매핑을 시도했지만 온라인으로 찾지 못했다.

또한이 방법으로 구현하면이 문제가 발생할 수 있습니까? 알려진 단점이 있습니까?

PHP 버전

PHP 5.4.44-0 + deb7u1 (CLI) (내장 : 2015년 8월 16일 9시 51분 53초) 저작권 (C) 1,997에서 2,014 사이 PHP의 그룹 젠드 엔진 v2.4.0, 저작권 (C) 1,998에서 2,014 사이 젠드 기술

+0

왜 필드 이름에 접두어가 있어야합니까? (테이블뿐만 아니라?) ... 나는 열 매핑 (u를 시도해보십시오)을 통해이를 달성 할 수 있다고 생각하지만 이상합니다. 나는 조금 연구 할 것이다. –

+0

그게 어떻게 테이블 필드 이름이 설계된, 그 이유는 내가 테이블 필드 또는 열 매핑을하고 싶었입니다. – user1149244

답변

2

당신은 당신의 내부 Phalcon의 이름으로 데이터베이스 열 이름을 매핑 할 수 있습니다 :

당신에 넣고모델

public function columnMap() 
{ 
    return [ 
     // database column name => phalcon name 
     'tbl_user_id'  => 'id', 
     'tbl_user_fullname' => 'fullname', 
     'tbl_user_phone' => 'phone', 
    ]; 
} 

열 매핑에 대한 자세한 정보를 확인 the documentation.

ORM은 개발자가 모델의 다른 열 이름을 테이블의 열 이름과 다르게 사용할 수 있도록하는 독립적 인 열 맵을 지원합니다. Phalcon은 새로운 열 이름을 인식하고 이에 따라 데이터베이스의 각 열과 일치하도록 이름을 바꿉니다. [...].

+0

안녕 티모, 네, 그걸 확인했습니다. 미안 해요, 제 질문은 그렇게 명확하지 않았습니다. 나는 그것이 모든 모델에서 정의 할 필요가 없다는 것을 알고 싶다. tbl_user, tbl_bag, tbl_contacts가 있으면 3 개의 모델 모두 하나의 매핑 파일을 읽습니다. – user1149244

+0

그렇게 할 수있는 방법이 없습니다. – Timothy