Может кто-нибудь работал с YiiMongoDBSuite (вот хороший мануал по этому расширению http://canni.github.com/YiiMongoDbSuite ... pdate.html). В документации к этому расширению есть такой код:
Код: Выделить всё
$model = ModelClass::model()->find(); // Find some document to work with
// change some fields
$model->field1 = 1;
$model->field2 = 'value';
// Optional: run validation, of changed fields:
$model->validate(array('field1', 'field2'));
// Use partial update
$model->update(array('field1', 'field2'), true /* <- second parameter indicates to use partial update mechanism */);
Вот мой пример:
Сама модель:
Код: Выделить всё
class Item extends EModMongoDocument {
public $name;
public $soname;
public static function model($className = __CLASS__) {
return parent::model($className);
}
public function getCollectionName() {
return 'item';
}
public function rules() {
return array(
array('name, soname', 'required', 'message'=>'Warning bleat!!!!!!'),
);
}
public function attributeLabels() {
return array(
'name'=>'Name',
'soname'=>'Soname',
);
}
public function attributeNames() {
return array(
'name',
'soname',
);
}
}
Код: Выделить всё
$criteria = new EMongoCriteria();
$criteria->addCond('name', '==', 'Terminator');
$model = Item::model()->find($criteria);
$model->name = 'Vasya';
$model->soname = 'Pupkin';
$model->validate(array('name', 'soname'));
$model->update(array('name', 'soname'), true);