Cakephp 3.x Table "Admin\Model\Table\ImagesTable" 与 "Url" 没有关联
Cakephp 3.x Table "Admin\Model\Table\ImagesTable" is not associated with "Url"
我想记录在图像table文件中。
namespace Admin\Model\Table;
use Cake\ORM\Table;
use Cake\Validation\Validator;
use Cake\ORM\Query;
use Cake\ORM\TableRegistry;
class ImagesTable extends Table
{
public function initialize(array $config) {
$this->table('images');
$this->hasMany('ImageAlbums', [
'className' => 'Admin.ImageAlbums',
'foreignKey' => 'conver_image_id'
]);
}
public function saveImage($imageDescription, $imageName, $albumId){
$imageEntity = $this->newEntity();
$imageData = [ 'imageDescription' => $imageDescription,
'imageOriginalUrl' => $this->Url->build('/', true).'original-img/'.$imageName,
'imageSmallUrl' => $this->Url->build('/', true).'small-img/'.$imageName,
'imageMediumUrl' => $this->Url->build('/', true).'medium-img/'.$imageName,
'imageBigUrl' => $this->Url->build('/', true).'big-img/'.$imageName,
'album_id' => $albumId];
$imageEntity = $this->patchEntity($imageEntity, $imageData);
return $this->save($imageEntity);
}
}
我在相册控制器中调用这个方法('saveImage')。
$image = $this->ImageAlbums->Images->saveImage("description.", 'natural.jpg', $this->enumArray['albums']['albumConverImages']);
关联相册图表此代码。
$this->belongsTo('Images', [
'className' => 'Admin.Images',
'foreignKey' => 'conver_image_id'
]);
我收到这个错误。 'Table "Admin\Model\Table\ImagesTable" is not associated with "Url"'
我要制作相册。我想添加专辑封面的图片。你能帮助我吗?您能否建议错误解决方案或其他解决方案?
您在 table class 函数内部调用 $this->Url->build(...)
,但 Url 是一个助手,table 无法使用.尝试改用 Router::url(...)
。 Url build 方法只是一个包装器!
我想记录在图像table文件中。
namespace Admin\Model\Table;
use Cake\ORM\Table;
use Cake\Validation\Validator;
use Cake\ORM\Query;
use Cake\ORM\TableRegistry;
class ImagesTable extends Table
{
public function initialize(array $config) {
$this->table('images');
$this->hasMany('ImageAlbums', [
'className' => 'Admin.ImageAlbums',
'foreignKey' => 'conver_image_id'
]);
}
public function saveImage($imageDescription, $imageName, $albumId){
$imageEntity = $this->newEntity();
$imageData = [ 'imageDescription' => $imageDescription,
'imageOriginalUrl' => $this->Url->build('/', true).'original-img/'.$imageName,
'imageSmallUrl' => $this->Url->build('/', true).'small-img/'.$imageName,
'imageMediumUrl' => $this->Url->build('/', true).'medium-img/'.$imageName,
'imageBigUrl' => $this->Url->build('/', true).'big-img/'.$imageName,
'album_id' => $albumId];
$imageEntity = $this->patchEntity($imageEntity, $imageData);
return $this->save($imageEntity);
}
}
我在相册控制器中调用这个方法('saveImage')。
$image = $this->ImageAlbums->Images->saveImage("description.", 'natural.jpg', $this->enumArray['albums']['albumConverImages']);
关联相册图表此代码。
$this->belongsTo('Images', [
'className' => 'Admin.Images',
'foreignKey' => 'conver_image_id'
]);
我收到这个错误。 'Table "Admin\Model\Table\ImagesTable" is not associated with "Url"'
我要制作相册。我想添加专辑封面的图片。你能帮助我吗?您能否建议错误解决方案或其他解决方案?
您在 table class 函数内部调用 $this->Url->build(...)
,但 Url 是一个助手,table 无法使用.尝试改用 Router::url(...)
。 Url build 方法只是一个包装器!