Update процессор не по id
Здравствуйте, сообщество MODX!
Мне нужно написать update процессор. Застрял на том, что нужно найти запись в таблице НЕ по id, в данной таблице первичный ключ id
Собственно вот обычный update процессор:
Мне нужно написать update процессор. Застрял на том, что нужно найти запись в таблице НЕ по id, в данной таблице первичный ключ id
Собственно вот обычный update процессор:
class GraphUpdateProcessor extends modObjectUpdateProcessor {
public $objectType = 'Graph';
public $classKey = 'Graph';
public function beforeSave() {
$props = $this->getProperties();
return !$this->hasErrors();
}
}
return 'GraphUpdateProcessor';
Я хочу обновить запись не по id, а например по полю event_id. Подскажите — как? Комментарии: 2
Сделал вот так, но не нравится:
class GraphUpdateProcessor extends modProcessor {
public $objectType = 'Graph';
public $classKey = 'Graph';
public function checkPermissions() { return true; }
public function process() {
$props = $this->getProperties();
$event_id = $props['event_id'];
$object = $this->modx->getObject($this->classKey, ['event_id:LIKE' => "%$event_id%"]);
$object->fromArray($props);
$object->save();
return $this->success('ok',$object);
}
}
return 'GraphUpdateProcessor';
Если у кого-то найдется лучше вариант, то напиши, пожалуйста!
попробуй указать primaryKeyField
public $primaryKeyField = 'event_id';
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.