dev-master
9999999-devFile bundle
MIT
The Requires
- php >=7.0
- imagine/imagine ^0.6.0
- ext-gd *
- roave/security-advisories dev-master
- symfony/symfony ~3.2
by yk115
file image
v1.0
1.0.0.0File bundle
MIT
The Requires
by yk115
file image
File bundle
composer.json
{ // ... "require": { // ... "SmartInformationSystems/file-bundle": "dev-master" }, "repositories": [ { "type" : "vcs", "url" : "https://github.com/SmartInformationSystems/FileBundle.git" } ] }
app/AppKernel.php
class AppKernel extends Kernel { public function registerBundles() { $bundles = array( // ... new SmartInformationSystems\FileBundle\SmartInformationSystemsFileBundle(), // ... ); } }
app/config/config.yml
smart_information_systems_file: storage: type: filesystem params: path: '%kernel.root_dir%/../web/storage' url: 'http://localhost/storage'
use SmartInformationSystems\FileBundle\Entity\Image; use SmartInformationSystems\FileBundle\Annotations as Files; class Brand { /** * ΠΠΎΠ³ΠΎΡΠΈΠΏ * * @var Image * * @ORM\OneToOne(targetEntity="SmartInformationSystems\FileBundle\Entity\Image", cascade="all") * @ORM\JoinColumn(name="logo_id", referencedColumnName="id", nullable=true) * * @Files\Image( * width=370, height=210, * previews={ * @Files\Image\Preview(name="admin", width=100, height=100), * } * ) */ private $logo; }
php binv/console doctrine:schema:update
, (*1)
use SmartInformationSystems\FileBundle\Entity\Image; use SmartInformationSystems\FileBundle\Annotations as Files; class ProductImage { /** * Π’ΠΎΠ²Π°Ρ * * @var Product * * @ORM\ManyToOne(targetEntity="Product", inversedBy="images") * @ORM\JoinColumn(name="product_id", referencedColumnName="id", nullable=false) */ private $good; /** * ΠΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. * * @var Image * * @ORM\OneToOne(targetEntity="SmartInformationSystems\FileBundle\Entity\Image", cascade="all") * @ORM\JoinColumn(name="image_id", referencedColumnName="id", nullable=false) * * @Files\Image( * width=700, height=700, * previews={ * @Files\Image\Preview(name="admin", width=100, height=100, crop=true), * @Files\Image\Preview(name="small", width=65, height=65, crop=true), * @Files\Image\Preview(name="medium", width=250, height=250, crop=true) * } * ) */ private $image; }
php binv/console doctrine:schema:update
, (*2)
class BrandAdmin extends AbstractAdmin { $listMapper->add('logo', 'string', [ 'template' => 'SmartInformationSystemsFileBundle:sonata-admin:list_image.html.twig', ]); }
app/config/config.yml
twig: form_themes: - 'SmartInformationSystemsFileBundle:Form:fields.html.twig'
use SmartInformationSystems\FileBundle\Form\Type\FileType; class BrandAdmin extends AbstractAdmin { protected function configureFormFields(FormMapper $formMapper) { $formMapper->add('logo', FileType::class, [ 'entity_class' => Brand::class, 'data_class' => Image::class, 'required' => false, ]); } }
File bundle
MIT
file image
File bundle
MIT
file image