3 pièce(s) jointe(s)
symfony-collection plugin dans symfony 4
Bonjour les zeros,
J'ai un formulaire pour ajouter des Ads(les publicités) et pour chaque Ad je doit ajouter des image : le site est comme airbnb(gestion des annonces)
alors j'ai un formulaire imbriqué (collection d'image dans le formulaire pour ajouter des Ads):
Pièce jointe 524493
AdType :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('title', TextType::class, $this->getConfiguration("titre", "tapez un super titre pour votre annonce"))
->add('slug', TextType::class, $this->getConfiguration("Adresse web", "tapez l'adresse web (automatique)"))
->add('coverImage', UrlType::class, $this->getConfiguration("Url de l'image principal", "Donnez l'adresse d'une image qui donne vraiment envie"))
->add('introduction', TextType::class, $this->getConfiguration("introduction", "donnez une description global de l'annonce"))
->add('content', TextareaType::class, $this->getConfiguration("Description detaille", "tapez une description qui donne vraiment envie de venir chez vous !"))
->add('rooms', IntegerType::class, $this->getConfiguration("Nombre de chambre", "le nom de chambres disponibles"))
->add('price', MoneyType::class, $this->getConfiguration("Prix par nuit", "indiquez le prix que voulez pour une nuit"))
->add('images',CollectionType::class, [
'entry_type' => ImageType::class,
'allow_add' => true
])
;
} |
et voici imageType.php :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| <?php
namespace App\Form;
use App\Entity\Image;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Form\Extension\Core\Type\UrlType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
class ImageType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('url', UrlType::class, [
"attr" => [
'placeholder' => "Url de l'image"
]
])
->add('caption', TextType::class, [
"attr" => [
'placeholder' => "Titre de l'image"
]
])
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => Image::class,
]);
}
} |
je veux installer et utiliser ce plugin
depuis la documentation :
symfony-collection form theme will be installed in app/Resources/views
symfony-collection jquery plugin will be installed in web/js.
mais je n'ai pas le dossier app ni web dans mon projet :
Pièce jointe 524497
mon projet et de version 4.4.1 :
Pièce jointe 524501
merci d'avance