/**
* Like tryLoad method but if the record not found, an exception is thrown.
*
* @param $id
*
* @return $this
*/
public function load($id)
{
if (!$this->controller) {
throw $this->exception('Unable to load model, setSource() must be set');
}
if ($this->loaded()) {
$this->unload();
}
$this->hook('beforeLoad', array('load', array($id)));
$this->controller->loadById($this, $id);
$this->endLoad();
return $this;
}