Foros del Web » Programando para Internet » PHP » Symfony »

[SOLUCIONADO] FormType Error 1048: param cannot be null.

Estas en el tema de FormType Error 1048: param cannot be null. en el foro de Symfony en Foros del Web. Hola que tal? Bien? Ah pues mira que bien... Yo estoy asqueado!! Llevo 4 putas horas con el mismo jodido error... y encima google no ...
  #1 (permalink)  
Antiguo 12/11/2014, 19:34
 
Fecha de Ingreso: enero-2014
Mensajes: 101
Antigüedad: 10 años, 3 meses
Puntos: 7
FormType Error 1048: param cannot be null.

Hola que tal? Bien? Ah pues mira que bien... Yo estoy asqueado!! Llevo 4 putas horas con el mismo jodido error... y encima google no me ayuda, asco de vida... asco de vida...!!! Yo ya no sé ni para qué me esfuerzo con la programación... En serio.... ASCO DE VIDAAAAAAA...!!!

JEJEJEJE


Bueno, luego de la rabieta. Explico.

Quiero subir datos a una base de datos doctrine por medio de un formType. Bien, hasta ahí todo bien. Lo que pasa es que no quiero subir los datos de toda la Entity, sólo quiero actualizar uno o dos campos...

Para eso defino en mi FormType las propiedades de mi Entity que quiero modificar, que son dos. Muy bien, me sale el formulario perfecto, pero cuando le doy a 'submit' va y me sale una exception.

Cita:
An exception occurred while executing 'INSERT INTO Usuarios (username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expired, expires_at, confirmation_token, password_requested_at, roles, credentials_expired, credentials_expire_at, urlFoto, ciudad, provincia, pais, nombre, apellidos, telefono, nacimiento, fecharegistro, notificaciones, mensajes, name, path) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)' with params [null, null, null, null, 0, "1bwzu4gs1gn4sgo8gkskco404kkgkk8", null, null, 0, 0, null, null, null, "a:0:{}", 0, null, null, null, null, null, null, null, null, null, null, null, null, "kljhjkh", null]:

SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'username' cannot be null
500 Internal Server Error - DBALException
1 linked Exception: PDOException »
Vamos, que lo que está haciendo es intentar grabar registros null en las propiedades de la Entity que no he definido en el FormType. Pero vamos a ver...! ¿Eso es normal? Es que lo veo una ....... chapuza vamos.

Si yo no defino las propiedades en el FormType será porque no quiero modificarlas, ¿no? No sé porqué me da este error... Ainssss... De verdad es que estoy asqueado ya.

Seguramente se me está pasando algo por algo, porque me parece extraño que no lo hayan previsto cuando se creo Symfony.

¿O es que hay algún método que tengo que poner explícitamente para definir los campos no añadidos como 'Default value' o algo así?

Bueno, pues nada. Si me podéis ayudar le haríais un bien a un trocito infinitesimal de la humanidad (también llamado 'yo') y os lo agradecería de verdad.

También vale alguna referencia a documentación DE CALIDAD. Porque mira que he leído el jodido libro de Symfony... pero o yo soy muy paleto o se explican mal (por no decir algo más salido de tono). Y eso que se me da bien el inglés y suelo leer novelas y foros en inglés... pero no hay manera. En los ejemplos de la documentación ponen ejemplos triviales, pero luego uno quiere avanzar un poquito... y ZAAAAAAS .... EXCEPTION EVERYWHERE!


Bueno, no me lamento más. Me voy a dormir que estoy más quemado...

Pd: espero que al menos os haya hecho reír mi rabieta :P jejeje
  #2 (permalink)  
Antiguo 13/11/2014, 06:41
Avatar de GeekGirl  
Fecha de Ingreso: julio-2014
Mensajes: 423
Antigüedad: 9 años, 9 meses
Puntos: 44
Respuesta: FormType Error 1048: param cannot be null.

El tema es que Symfony está tratando de crear un nuevo registro y no actualizando valores de uno existente. Vos querés hacer un update o un insert? En cuanto al default value, lo podés setear al crear los campos de tu tabla directamente en la base de datos o desde symfony en el add:

Código PHP:
->add('myfield''text', array(
     
'label' => 'Field',
     
'data' => 'Default value'
)) 
  #3 (permalink)  
Antiguo 13/11/2014, 16:04
 
Fecha de Ingreso: enero-2014
Mensajes: 101
Antigüedad: 10 años, 3 meses
Puntos: 7
Respuesta: FormType Error 1048: param cannot be null.

Efectivamente tienes razón. Estaba ofuscado. Lo dice bien claro el error (y en mayúsculas): INSERT TO. Y no es lo que quiero hacer, no quiero crear un registro nuevo... sino actualizar uno existente. Al no pasarle datos null para un campo definido como 'no null' en la base de datos, sale el error.

Lo de Default value lo tengo directamente en la base de datos, aunque ahora que lo dices... creo que es mejor tenerlo en el formType, así es más fácil de controlar/actualizar. Aunque bueno, al querer hacer un update ya no me interesa lo de default value para esto, aunque lo usaré en otros sitios 'ahora que sé que existe' la forma de ponerlo a través de Symfony2.

Es que estoy siguiente este 'tutorial' http://gitnacho.github.io/symfony-do...e_uploads.html (que no es más que una traducción literal de la documentación oficial) y claro, en el ejemplo el hombre crea registros nuevos... de ahí el conflicto que hay en mi planteamiento al querer actualizar 'utilizando el mismo código' xD

De verdad, a veces esto me saca de mis casillas. Seguiré con el tema este a ver qué tal. Gracias por echarme una mano, GeekGirl.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:04.