Quantcast
Channel: Grafikart | Derniers Sujets du forum
Viewing all articles
Browse latest Browse all 1542

form EntityType

$
0
0

Bonjour
j’’ai créé un formulaire EntityType comme suit qui fonctionne bien:

{
    $builder

        ->add('designationd', EntityType::class,[
            'class' => Fourniture::class,
    'query_builder' => function (EntityRepository $er){
            return $er->createQueryBuilder('f')
                -> orderBy( 'f.designation', 'ASC');
    },
            'choice_label' => function($allChoices, $currentChoiceKey){
            return $allChoices->getReference(). " " .$allChoices->getMarque(). " " .$allChoices->getDesignation(). " " .$allChoices->getPvHt() . " €";

            },
            'label' => 'Dédignation :']
        )

        ->add('quantited')

        ->add('remised');
}

Dans mon controller je veux enregistrer mon formulaire mais en écrivant au passage la valeur du champ puHT qui ne figure pas dans le formulaire:

$ligneDevi = new LigneDevis();
        $form = $this->createForm(LigneDevisType::class, $ligneDevi);
        $form->handleRequest($request);

        if ($form->isSubmitted() && $form->isValid()) {
            $ligneDevi->setAffaire($affaire);
//           ;dump($form);die();
            $ligneDevi->setPrixUnitaireHtd(???????????????????????????);
            $manager->persist($ligneDevi);
            $manager->flush();

Le dump($form) qui est commenté affiche bien le puHt (avant-avant derdière ligne):

LigneDevisController.php on line 53:
Form {#963 ▼
  -config: FormBuilder {#1051 ▼
    -children: []
    -unresolvedChildren: []
    #locked: true
    -dispatcher: ImmutableEventDispatcher {#939 ▶}
    -name: "ligne_devis"
    -propertyPath: null
    -mapped: true
    -byReference: true
    -inheritData: false
    -compound: true
    -type: ResolvedTypeDataCollectorProxy {#853 ▶}
    -viewTransformers: []
    -modelTransformers: []
    -dataMapper: PropertyPathMapper {#918 ▶}
    -required: true
    -disabled: false
    -errorBubbling: true
    -emptyData: Closure(FormInterface $form) {#858 ▶}
    -attributes: array:1 [▶]
    -data: LigneDevis {#685 ▼
      -id: null
      -referenced: null
      -designationd: Fourniture {#1061 ▼
        -id: 5
        -marque: "NKE"
        -refFournisseur: null
        -designation: "1 Multidisplay portrait composite blanc     (réf:061) noir"
        -pvHt: 295.0
        -pvTtc: 354.0
        -reference: "31-33-062"

Comment ecrire la ligne $ligneDevi->setPrixUnitaireHtd(???????????????????????????); pour recuperer le pvHt: 295.0 du dump pour mettre à jour le champ puht qui ne figure pas dans le formulaire.
Bien entendu il n'y a aucune relation entre les 2 entités (Celle que jemet a jour et celle qui génère la liste déroulante)
Meerci de votre aide


Viewing all articles
Browse latest Browse all 1542

Trending Articles