symfony - Catchable Fatal Error: Argument 1 passed to ... must be an instance of ... string given -
when try save data of form in database throw following error:
catchable fatal error: argument 1 passed seicbundle\entity\user::settipodocumento() must instance of seicbundle\entity\tipo_documento, string given, called in /home/ubuntu/workspace/sonataadmin/src/seicbundle/controller/defaultcontroller.php on line 56 , defined
the user entity defined follows:
* set programa * * @param \seicbundle\entity\programa $programa * @return usuario */ public function setprograma(\seicbundle\entity\programa $programa = null) { $this->programa = $programa; return $this; } /** * programa * * @return \seicbundle\entity\programa */ public function getprograma() { return $this->programa; } /** * set tipo_documento * * @param \seicbundle\entity\tipo_documento $tipodocumento * @return usuario */ public function settipodocumento(\seicbundle\entity\tipo_documento $tipodocumento = null) { $this->tipo_documento = $tipodocumento; return $this; } /** * tipo_documento * * @return \seicbundle\entity\tipo_documento */ public function gettipodocumento() { return $this->tipo_documento; } and in controller have following code:
public function persistiraction(request $request){
$codusu=$request->get("codusu"); $nomusu=$request->get("nomusu"); $password=$request->get("password"); $nombres=$request->get("nombres"); $apellidos=$request->get("apellidos"); $programa=$request->get("programa"); $tipdoc=$request->get("tipdoc"); $numdoc=$request->get("numdoc"); $email=$request->get("email"); $cel=$request->get("cel"); $tel=$request->get("tel"); $now=new \datetime("now"); $now->format('yyyy-mm-dd hh:ii:ss'); $user = new user(); $user->settipodocumento($tipdoc); $user->setprograma($programa); $user->setcodigoidentificacion($codusu); $user->setfirstname($nombres); $user->setlastname($apellidos); $user->settelefono($tel); $user->setcelular($cel); $user->setnumerodocumento($numdoc); $user->setusername($nomusu); $user->setpassword($password); $user->setemail($email); $user->setcreacionat($now); $em = $this->getdoctrine()->getmanager(); $em->persist($user); $em->flush(); return new response('created user id '.$user->getid()); } this form:
<form id="login-form" action="{{ path('seic_persistir') }}" method="post" role="form"> <div id="registroform"> <div class="alert alert-success" role="alert"> <span class="glyphicon glyphicon-user"></span> <strong>verificación de código correcta!</strong> complete los siguientes campos. </div> <hr> <div class="form-group"> <input type="hidden" name="codusu" id="codusu" value="{{codest}}"> <input type="text" name="nomusu" id="nomusu" tabindex="4" class="form-control" placeholder="nombre de usuario" required> </div> <div class="form-group"> <input type="text" name="password" id="password" tabindex="4" class="form-control" placeholder="contraseña" required> </div> <hr> <div class="form-group"> <input type="text" name="nombres" id="nombres" tabindex="3" class="form-control" placeholder="nombres" value="" required> </div> <div class="form-group"> <input type="text" name="apellidos" id="apellidos" tabindex="4" class="form-control" placeholder="apellidos" required> </div> <div class="form-group"> <select class="selectpicker" name="programa"> <option disabled selected value="1">seleccione programa...</option> {% programa in programas %} <option value="{{programa.id}}" >{{programa.nombreprograma}}</option> {% endfor %} </select> </div> <div class="form-group"> <select class="selectpicker" name="tipdoc"> <option disabled selected value="1">seleccione tipo documento...</option> {% tipodocumento in tipodocumentos %} <option value="{{tipodocumento.id}}" >{{tipodocumento.nombretipo}}</option> {% endfor %} </select> </div> <div class="form-group"> <input type="text" name="numdoc" id="numdoc" tabindex="4" class="form-control" placeholder="numero de documento" required> </div> <div class="form-group"> <input type="text" name="email" id="email" tabindex="4" class="form-control" placeholder="correo electrónico" required> </div> <div class="form-group"> <input type="text" name="tel" id="tel" tabindex="4" class="form-control" placeholder="telefono fijo *" > </div> <div class="form-group"> <input type="text" name="cel" id="cel" tabindex="4" class="form-control" placeholder="celular" required> </div> <hr> <div class="form-group"> <div class="row"> <div class="col-sm-6 col-sm-offset-3"> <input type="submit" name="register-submit" id="register-submit" tabindex="8" class="form-control btn btn-register" value="registrarse" > </div> </div> </div> </div> </form>
Comments
Post a Comment