Symfony2: Behandling av formen med relasjonsdataene læren

stemmer
2

Jeg bygger enkel CMS i S2 og jeg har litt problemer med wih behandling relasjonell kategori i artikkel form.

Kode for CategoryType og handling: http://codepaste.net/ahyoig alle liker i tutorial / manuell på Symfony stedet.

Skjemaet ser fint, men når jeg behandler data (også som i manualen) får jeg feilmelding: Forventet argument for type array, streng gitt i valg feltet, og jeg har møbler ingen anelse akkurat nå hvordan å løse det.

Publisert på 26/05/2011 klokken 12:44
kilden bruker
På andre språk...                            


2 svar

stemmer
2

Jeg tror problemet ditt er fordi du angi alternativet multipletil false. Dette betyr at formen typen vil returnere en streng verdi (siden du satt multipletil falseen enkelt verdi), men ditt forhold er trolig satt opp som en mange-til-mange forhold.

Innstilling av multiplemuligheten til å truesende en matrise i stedet for en streng til objektet som er hva som forventes av programmet. Så, hvis du ikke liker listeboksen utseendet på CategoryType i HTML, kan du gjøre det på en annen måte ved å bruke skjemaet theming i Symfony2.

Håper dette hjelper, Matt

Svarte 01/06/2011 kl. 16:30
kilden bruker

stemmer
1

Du trenger ikke en CategoryType. Opprettelsen av $ kategorier matrise er også ubrukelig.

Det beste valget er å bruke mors entitetsskjema Type:

<?php

use Doctrine\ORM\EntityRepository;

//...

$article = new Article();

$form = $this->get('form.factory')
            ->createBuilder('form',$article)
            ->add('category', 'entity', array
            (
                'class' => 'CMSBackBundle:Category',
                'query_builder' => function(EntityRepository $er)
                {
                    return $er->createQueryBuilder('c')
                            ->orderBy('c.title', 'ASC');
                },
                'expanded' => false,
                'multiple' => false
            )
            // ...
            ->getForm();
Svarte 24/02/2012 kl. 11:02
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more