Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/06/2013, 20:52
Avatar de jhg
jhg
 
Fecha de Ingreso: marzo-2012
Mensajes: 96
Antigüedad: 12 años, 1 mes
Puntos: 1
Campos de formulario opcionales

Hola, necesito que un formulario que tengo:
Código:
    $form = $this->createFormBuilder($ad)
            ->add('name', 'text')
            ->add('lastname', 'text')
            ->add('email', 'email')
            ->add('telephone')
            ->add('category')
            ->add('city', 'text')
            ->add('title', 'text')
            ->add('description', 'textarea')
            ->add('type')
            ->add('price', 'text')
            ->add('attachment', 'file')
            ->getForm();
Sean opcionales algunos campos. En el modelo tengo (pondre solo la aprte más relevante de cara al formulario, no todo el código por la extensión del mismo):
Código:
/**
 * @ORM\Entity
 * @ORM\Table(name="adsite")
 * @ORM\HasLifecycleCallbacks()
 */
class Adsite
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;
    /**
     * @ORM\ManyToMany(targetEntity="Adcategory")
     * @ORM\JoinTable(name="ad_category",
     *     joinColumns={@ORM\JoinColumn(name="ad_id", referencedColumnName="id")},
     *     inverseJoinColumns={@ORM\JoinColumn(name="category_id", referencedColumnName="id")}
     * )
     */
    protected $category;
    /**
     * @ORM\ManyToOne(targetEntity="Username")
     * @ORM\JoinColumn(name="user_id", referencedColumnName="id")
     */
    protected $username;
    /**
     * @ORM\Column(type="string")
     */
    protected $name;
    /**
     * @ORM\Column(type="string")
     */
    protected $lastname;
    /**
     * @ORM\Column(type="string")
     */
    protected $title;
    /**
     * @ORM\ManyToOne(targetEntity="Adsitetype")
     * @ORM\JoinColumn(name="type_id", referencedColumnName="id")
     */
    protected $type;
    /**
     * @ORM\Column(type="text")
     */
    protected $description;
    /**
     * @ORM\Column(type="decimal", scale=2)
     */
    protected $price;
    /**
     * @ORM\Column(type="string")
     */
    protected $email;
    /**
     * @ORM\Column(type="string")
     */
    protected $telephone;
    /**
     * @ORM\Column(type="string")
     */
    protected $city;
    /**/
    protected $attachment;
Hace unas semanas necesite esto mismo con solo uno de los campos y recuerdo que buscando por google vi una opción con la que se suponia que así no era obligatorio rellenar ese campo pero el HTML generado por Symfony seguia teniendo require en el campo, en ese momento no me importo que no me funcionara como no era importante en aquel momento, pero ahora que lo necesito para practicamente todos los campos del formulario necesito saber alguna forma de hacerlo, y que funcione. He estado mirando por google pero no me queda del todo claro como puedo hacerlo.

De paso, si sabeis de algun manual, tutorial, libro, para seguir aprendiendo Symfony (he empezado con symfony hace poco, menos de un mes, o mes y pico) lo agradeceria (con manual o libro me refiero a alguno distinto de la documentacion propia de Symfony, que me ha servido y ayudado pero no me es del todo clara o en algunos aspecto no profundiza tanto como me gustaria).
__________________
JHG