Yii Framework Forum: Problema Con Las Vistas - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Problema Con Las Vistas Rate Topic: -----

#1 User is offline   dj_lethal 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 38
  • Joined: 06-February 13

Posted 21 February 2013 - 02:32 PM

Hola necesito saber como puedo mostrar en una vista los datos de distintas tablas de mi base de datos.Por ejemplo tengo dos tablas una tabla es la de Usuarios y la otra es de Comentarios,el caso es que necesito mostrar en los comoentarios por ejemplo la foto del que hizo el comentario.La relacion de usuarios con comentarios es de uno a muchos.Gracias de ante mano.
0

#2 User is offline   jamon 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 13
  • Joined: 09-March 11

Posted 25 February 2013 - 07:11 PM

View Postdj_lethal, on 21 February 2013 - 02:32 PM, said:

Hola necesito saber como puedo mostrar en una vista los datos de distintas tablas de mi base de datos.Por ejemplo tengo dos tablas una tabla es la de Usuarios y la otra es de Comentarios,el caso es que necesito mostrar en los comoentarios por ejemplo la foto del que hizo el comentario. La relación de usuarios con comentarios es de uno a muchos.Gracias de ante mano.


Deberías explicarlo un poco más detalladamente y copiando código de los models... ¿Tienes creado el relation en los modelos? Si es así, tienes bastante trabajo hecho.

Deberías intentar algo así (a bote pronto, no lo he probado):

En el modelo de Usuarios:
 public function relations()
    {
        return array(
            'comentarios_'=>array(self::HAS_MANY, 'Comentarios', 'user_id'),
        );
    }


En el model Comentarios:
public function relations()
    {
        return array(
            'usuario_'=>array(self::BELONGS_TO, 'Usuarios', 'user_id'),
        );
    }

Para mostrar la imagen en un _view de Comentarios:
$model->usuario_->foto

0

#3 User is offline   dj_lethal 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 38
  • Joined: 06-February 13

Posted 26 February 2013 - 12:39 PM

Hola muchas gracias de antemano, ya las relaciones en los modelos ya las tenia hecha como te mostraré aquí:
en el modelo de Comentarios
return array(
        'usuarios'=>array(self::BELONGS_TO, 'Usuario', 'usuario_idusuario'),
	);

en el de usuarios
return array(
        'comentarios'=>array(self::HAS_MANY,'Comentario','usuario_idusuario'),
	);

en el detailview del view.php me funciona bien donde me de error es en el _view.php y lo que me sucede es que a la hora de mostrar en el _view de comentarios me dice que la variable $model es indefinida y cuando intento mostralo con $data tambien me dá error.Gracias otra vez.
0

#4 User is offline   Miguel Garcia 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 28
  • Joined: 06-November 12

Posted 27 February 2013 - 11:06 AM

Hola dj_lethal:

En _view,la utilizacion de $data no deberia dar problemas, por favor, muestra el codigo que utilizas




Miguel
Recursos Formacion
0

#5 User is offline   dj_lethal 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 38
  • Joined: 06-February 13

Posted 27 February 2013 - 02:09 PM

View PostMiguel Garcia, on 27 February 2013 - 11:06 AM, said:

Hola dj_lethal:

En _view,la utilizacion de $data no deberia dar problemas, por favor, muestra el codigo que utilizas




Miguel
Recursos Formacion

Asi es como estoy utilizando el data:
<b><?php echo CHtml::encode($data->getAttributeLabel('usuario_idusuario')); ?>:</b>
	<?php echo CHtml::encode($data->usuarios->nombre);?>
	<br />
<b><?php echo CHtml::encode($data->getAttributeLabel('usuario_idusuario')); ?>:</b>
	<?php echo CHtml::encode($data->usuarios->foto);?>
	<br />

ya el código de las relaciones lo puse arriba,y así es como intento mostrar el nombre del usuario y la foto del que realizó el comentario.Esto es solo lo que he intentado modificar por ahora del código que te genera yii.Gracias si necesitas otras partes del código dimelo y te las muestro.
0

#6 User is offline   Miguel Garcia 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 28
  • Joined: 06-November 12

Posted 28 February 2013 - 01:41 AM

Supongo que el resto de informacion esta funcionando, p.ej. $data->lo-que-sea, que el view es de Comentarios, y que la columna nombre y fotos, existe en la tabla usuarios....
Si todo es correcto, falta que nos digas que error te esta dando.
0

#7 User is offline   dj_lethal 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 38
  • Joined: 06-February 13

Posted 28 February 2013 - 10:04 AM

View PostMiguel Garcia, on 28 February 2013 - 01:41 AM, said:

Supongo que el resto de informacion esta funcionando, p.ej. $data->lo-que-sea, que el view es de Comentarios, y que la columna nombre y fotos, existe en la tabla usuarios....
Si todo es correcto, falta que nos digas que error te esta dando.

Hola gracias otra vez,los campos nombre y foto si existen en la tabla de usuario y este es el error que me está enviado con el $data:Trying to get property of non-object.Será que la relación de comentarios con usuario no estará bien?Revisaré de nuevo ahi a ver.
0

#8 User is offline   Miguel Garcia 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 28
  • Joined: 06-November 12

Posted 01 March 2013 - 01:18 AM

Este error, lo acostumbra a dar tambien cuando no encuentra el registro correspondiente. Comprueba que exista el usuario.
0

#9 User is offline   safitanet 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 44
  • Joined: 04-August 11

Posted 01 March 2013 - 03:05 AM

Hola, en tu tabla del model Usuario el campo se llama usuario_idusuario?


Sí que parece que pueda estar el error en la relation
0

#10 User is offline   dj_lethal 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 38
  • Joined: 06-February 13

Posted 01 March 2013 - 10:08 AM

View Postsafitanet, on 01 March 2013 - 03:05 AM, said:

Hola, en tu tabla del model Usuario el campo se llama usuario_idusuario?


Sí que parece que pueda estar el error en la relation

Mien estos son los campos de mis tablas:
Tabla de Comentario
	1 	idcomentario 	int(100) 	
	2 	usuario_idusuario 	int(200) 
	3 	contenido 	varchar(140) 	
	4	fechahora 	date 		
	5 	adjunto 	varchar(200) 	
Tabla de Usuario
  1 	 idusuario 	int(200) 	
  2 	nombre 	varchar(150) 	
  3 	apellidos 	varchar(150) 
  4 	email 	varchar(150) 	
  5 	role 	int(11) 	
  6 	last_login 	timestamp 
  7 	password_2 	varchar(150) 	
  8 	descripcion 	tinytext 	
  9 	foto           varchar(200)

Espero que esto les haga ver mejor el problema.Muchas Gracias
0

#11 User is offline   Miguel Garcia 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 28
  • Joined: 06-November 12

Posted 02 March 2013 - 12:36 PM

comprueba que existan los registros de usuario a los que intentas acceder

Asumo en usuarios idusuario es Primary key

int(200)?...seguro?
0

#12 User is offline   dj_lethal 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 38
  • Joined: 06-February 13

Posted 05 March 2013 - 10:42 AM

View PostMiguel Garcia, on 02 March 2013 - 12:36 PM, said:

comprueba que existan los registros de usuario a los que intentas acceder

Asumo en usuarios idusuario es Primary key

int(200)?...seguro?

Disculpa la demora,idusuario si es el primary key y es int(100).
0

#13 User is offline   dj_lethal 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 38
  • Joined: 06-February 13

Posted 05 March 2013 - 10:58 AM

Ya ví cual era el error, el problema estaba en la relación que estaba declarando en el modelo de comentario.En vez de usuario_idusuario era con idcomentario.Disculpen no me dira cuenta de esto antes.Gracias por su ayuda que sirvió de mucho.
return array(
        'usuarios'=>array(self::BELONGS_TO, 'Usuario', [b]'idcomentario'[/b]),
        );

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users