1

我想使用 cakephp 模型为我在 mogodb 上的集合使用枚举文档:

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',
            ),
        );

 }

顺便说一句,我可以使用术语整数来引用数字字段吗?

4

1 回答 1

0

integer类型被定义为 cakephp-mongodb 库中支持的列映射。此外, Mark Story在这篇博文中提到了这种类型。

库的代码库中似乎没有对枚举支持的引用,所以我认为它不受支持。集成EnumerableBehavior库可能会有一些运气;否则,这些选项可以很容易地存储在模型类的静态数组中,并在您的应用程序中手动验证。请注意,MongoDB 没有枚举字段类型(您可能会在 MySQL 中找到),因此无论哪种方式,您的应用程序都将负责确保字段的数据完整性。

于 2012-08-13T19:05:15.377 回答