2012-08-09 4 views
0

J'ai quelques questions tout Conected, donc je vais demander à tous ici:tableaux, formulaires et validation - Symfony2, Brindille, Doctrine

  1. [Résolu] je champs de date qui peuvent être annulable et quand Je ne les remplis pas, ils sont affichés en tant que 2012-08-09 - date d'aujourd'hui, bien que lorsque je vérifie dans la base de données, ils sont NULL. J'ai @ORM \ Column (type = "date", nullable = true) et @Assert \ Date ci-dessus les deux.

  2. J'ai la validation du formulaire @Assert \ Date de et @Assert \ NotBlank() mais je ne respecte pas cette limite ne se passe rien, bien que j'ai {{form_errors (form)}}. Comment montrer ce qui ne va pas avec le formulaire? [Résolu] Le dernier est que j'ai une contrainte NotBlank() au-dessus d'un champ appelé $ currency. Voici comment je l'ajoute:

    $builder->add('currency', 'choice', array(
        'choices' => array(
         'empty_value' => '--- Choose ---', 'USD' => 'USD', 'HKD' => 'HKD'))); 
    

    mais si je ne mets rien (il reste --- Choisir ----) il l'accepte, même si elle est vide. Je veux que le choix par défaut soit --- Choisissez ---, mais il ne doit pas être laissé de cette façon et le formulaire doit être valide dans le même temps.

J'apprécierais votre aide!

+1

Pourquoi avez-vous la chaîne 'empty_value' pour '--- Choose ---' il devrait être juste '' si vous voulez contraindre par défaut – gunnx

+0

Merci beaucoup! :) J'ai vu un exemple où il s'agissait de 'empty_value' et j'ai pensé que c'était comme ça. ; d – Faery

+1

comment affichez-vous l'élément de date? –

Répondre

2

Pour la première question, tirée de la documentation brindille:

Si la valeur passée au filtre de date est nulle, elle retourne la date par défaut. Si une chaîne vide est souhaitée au lieu de la date actuelle, utilisez un opérateur ternaire:

{{ post.published_at is empty ? "" : post.published_at|date("m/d/Y") }} 
+0

Merci de m'avoir aidé et de répondre à presque toutes mes questions! J'apprécie beaucoup! – Faery

Questions connexes