в общем я просто закоментил проверку
getPrimaryKey()
получилось так:
public function setMainImage($img)
{
if ($this->owner->primaryKey != $img->itemId) {
throw new \Exception('Image must belong to this model');
}
$counter = 1;
/* @var $img Image */
$img->setMain(true);
$img->urlAlias = $this->getAliasString() . '-' . $counter;
$img->save();
$images = $this->owner->getImages();
foreach ($images as $allImg) {
// if ($allImg->getPrimaryKey() == $img->getPrimaryKey()) {
// continue;
// } else {
// $counter++;
// }
continue;
$allImg->setMain(false);
$allImg->urlAlias = $this->getAliasString() . '-' . $counter;
$allImg->save();
}
$this->owner->clearImagesCache();
}
картинки добавляются как положено
но вот с выводом картинок все-равно беда.
пока что буду использовать
findAll()
чтобы вытащить картинки из базы