2016-04-06 2 views
0

UPDATESymfony 2/Учение не спасает Любые Нули в поле VARCHAR

Как просил,

$NewUser = new Users(); 
$Form = $this->createForm(new UserType(), $NewUser, []) 
       ->add('save', 'submit', ['label' => 'Save', 
             'attr' => ['class' => 'SaveButton ftLeft'], 
             ]); 
$Form->handleRequest($request); 

if ($Form->isValid()) { 
    /* 
     Sometimes add more data to the entity..... 
    */ 
    $em = $this->getDoctrine()->getManager(); 
    $em->persist($NewUser); 
    $em->flush(); 
} 

$FormRender = $Form->createView(); 
return $this->render('xxxxBundle:Users/add.html.twig', 
            ['AddUser' => $FormRender]); 

Иногда я буду добавлять дополнительный к объекту, на поля создаются в коде PHP, например, дату регистрации аккаунта, но в большинстве случаев просто сохраняйте объект с данными формы.


Очень простой вопрос, у меня есть новая система (МОГ) и есть уведомление, что при попытке сохранить нули, для чего, номер телефона входа, он не сохраняет нули?

Я использую YMAL файлов контролировать свою доктрину ОРМ, вот как я поставил его в моей таблице User,

mobileNumber: 
     type: string 
     nullable: false 
     length: 50 
     options: 
      fixed: false 
     column: mobile_number 

Это сохранение/сделать поле имеет VARCHAR, и ничего не думал о до тех пор, пока я не выполнил случайный тест и не увидел, что это не спасение каких-либо ведущих нулей?

Я знаю, что вы не можете сохранить ведущие нули в типе типа int, но это varchar. Кроме того, когда я захожу в базу данных и вручную добавляю нуль к этому вводу, это прекрасно, поэтому я беру его не в базу данных. Что-то связано с тем, как я получаю доктрину для сохранения данных?

Если да, то как это изменить? Я только что сохранил данные со стандартными командами persist() и flush()? Не знаете, почему это не спасет нули? Я думал, что мне нужно изменить тип YMAL на нечто вроде телефона? Я был над документами, не вижу его.

Вся помощь приветствуется.

Спасибо.

+0

Обеспечить код, который обрабатывает сохранение этих данных. Я почти уверен, что это не Доктрина. –

+0

У меня есть обновленный вопрос с запрошенными данными ... однако я не уверен, как я сохраняю это проблема. В большинстве случаев я просто сохраняю форму, и это очень просто и не сохраняет «нули» в номере телефона. Чтобы добавить, тип формы пользователя имеет номер мобильного телефона, установленный на «номер». –

ответ

1

Причины в вашем комментарии:

форма пользователя типа имеет номер мобильного телефона установлен на вход «номер».

Это значение передается в int компонентом формы. Измените тип поля на регулярную строку.

Если вы хотите проверить значение быть только цифры, используйте Validation component

+0

Действительно? Дам, я просто об этом не думал. Я дам вам поход и вернусь к вам. Спасибо друг! –

Смежные вопросы