2012-08-12 2 views
1

내가 CakePHP의 모델을 사용하여 mogodb에 내 컬렉션에 대한 열거 문서를 사용하려면 : 그런데CakePHP의 MongoDB를

class Profile extends AppModel { 

public $primaryKey = '_id'; 

var $mongoSchema = array(
     'firstname' => array('type'=>'string'), 
     'lastname'=>array('type'=>'string'), 
     'adress'=>array('type'=>'string'), 
     'tel'=>array('type'=>'integer'), 
     'location'=>array(
      'city' => array('type'=>'string'), 
      'country' => array('type'=>'string'), 
      'street' => array('type'=>'string'), 
      'zip' => array('type'=>'integer'), 
      ), 
     'created'=>array('type'=>'datetime'), 
     'modified'=>array('type'=>'datetime'), 
     'corporation'=>array(
      'name' => array('type'=>'string'), 
      'description' => array('type'=>'string'), 
      'link' => array('type'=>'string'), 
      'logo' => array('type'=>'string'), 
      ), 
     'gender'=>array(
      'male' => 'Male', 
      'female' => Female, 
      'unspecified' => 'Unspecified', 
      ), 
     ); 

} 

나는 숫자 필드에 참조 용어의 정수를 사용할 수 있습니까?

답변

0

integer 유형은 cakephp-mongodb 라이브러리에서 column mapping을 지원하는 것으로 정의됩니다. 또한 해당 유형은 Mark Story의 this blog post에 언급되어 있습니다.

라이브러리의 코드베이스에는 enum 지원에 대한 참조가 없으므로 지원되지 않는다고 가정합니다. 당신은 EnumerableBehavior 라이브러리를 통합하는 행운이있을 수 있습니다; 그렇지 않으면 이러한 옵션을 모델 클래스의 정적 배열에 쉽게 저장하고 응용 프로그램에서 수동으로 유효성을 검사 할 수 있습니다. MongoDB에는 열거 형 필드 유형이 없으므로 (MySQL에서 찾을 수있는 것처럼) 응용 프로그램이 필드의 데이터 무결성을 보장하는 데 어느 것이 든 책임이 있습니다.