내 프로젝트에서 독립형 버전의 SyliusResourceBundle (0.9)을 사용합니다. 사용자, 그룹, 역할 및 회사와 관련된 모든 항목에 문제없이 관리 할 수 있습니다.내 파일 업데이트 리스너가 sylius 프로젝트에서 variant_image처럼 작동하지 않는 이유는 무엇입니까?
Gaufrette \ Filesystem을 사용하여 로고를 회사에 추가하려고했습니다 (예 : sylius의 variant_image). 그리고 내 서비스가 실행되지 않는 것 같습니다. 그는 업로드하지 않고 이미지를 유지하려고 시도하고 내 청취자에게 오류 메시지가 없습니다! config.yml에서
KNP Gaufrette 구성 :
knp_gaufrette:
adapters:
project_file:
local:
directory: %kernel.root_dir%/../web/media/file
create: true
filesystems:
project_file:
adapter: project_file
ProjectCoreBundle \ 자료 \ 구성 \ services.yml :
이#in ProjectCoreBundle\Resources\Config\services.yml
# Listener
project.listener.image_upload:
class: %project.listener.image_upload.class%
arguments: ['@project.image_uploader']
tag:
- { name: kernel.event_listener, event: project.company.pre_create, method: uploadCompanyLogo }
- { name: kernel.event_listener, event: project.company.pre_update, method: uploadCompanyLogo }
# Other
project.image_uploader:
class: %project.image_uploader.class%
factory_class: Gaufrette\Filesystem
factory_service: knp_gaufrette.filesystem_map
factory_method: get
arguments: [project_file]
내 ImageUploadListener :
<?php
namespace Project\CoreBundle\EventListener;
use Project\CompanyBundle\Entity\CompanyInterface;
use Project\CoreBundle\Uploader\ImageUploaderInterface;
use Symfony\Component\EventDispatcher\GenericEvent;
class ImageUploadListener
{
protected $uploader;
public function __construct(ImageUploaderInterface $uploader)
{
$this->uploader = $uploader;
}
public function uploadCompanyLogo(GenericEvent $event)
{
$subject = $event->getSubject();
if (!$subject instanceof CompanyInterface) {
throw new UnexpectedTypeException(
$subject,
'Project\CompanyBundle\CompanyInterface');
}
$logo = $subject->getLogo();
if ($logo->hasFile()) {
$this->uploader->upload($logo);
}
}
}
내가 보내는 내 이미지가있는 양식은 다음과 같습니다.
An exception occurred while executing 'INSERT INTO syn_image (path, createdAt, updatedAt) VALUES (?, ?, ?)' with params [null, "2014-05-23 18:13:13", "2014-05-23 18:13:13"]:
SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'path' cannot be null
내 서비스가 시작되지 않는다고 생각합니다. 누구든지이 문제를 해결할 수 있습니까?
고마워요 :) Thanks :
감사합니다. – Khyor