1 00:00:00,000 --> 00:00:07,000 Tutorial para la creacion de vistas con relationships y arguments. http://cambrico.net 2 00:00:07,000 --> 00:00:17,000 Antes de empezar, vamos a echarle un vistazo a los tipos de contenido creados para el ejemplo 3 00:00:17,000 --> 00:00:24,700 Tenemos Lugar y Viaje. Los usuarios realizan Viajes a Lugares. 4 00:00:24,700 --> 00:00:38,700 Dentro del tipo de contenido Lugar, tenemos los campos habituales más uno de imagen 5 00:00:39,229 --> 00:00:51,309 En el tipo de contenido Viaje podemos encontrar un nodereference a Lugar, que servira para indicar el Lugar visitado por el usuario en su Viaje 6 00:00:53,100 --> 00:01:00,100 La vista que vamos a crear mostrara los lugares visitados por cada usuario, mostrando su nombre y una imagen. 7 00:01:00,200 --> 00:01:09,200 Necesitaremos usar argumentos, para saber el usuario y relaciones para juntar los Viajes del usuario con los Lugares que ha visitado 8 00:01:09,250 --> 00:01:18,250 Para crear la vista, vamos a Administer > Site Building > Views 9 00:01:18,833 --> 00:01:22,833 Y le damos a Add 10 00:01:23,800 --> 00:01:40,800 En las opciones básicas de la vista, introducimos el nombre, la descripcion y un tag para poder identificarla. 11 00:01:40,849 --> 00:01:48,769 Seleccionamos el tipo de vista "Node" y pasamos a la parte avanzada de configuracion con "Next" 12 00:01:48,100 --> 00:01:53,100 Pasamos a configurar la vista! 13 00:01:54,633 --> 00:01:59,633 Primero seleccionaremos los campos a mostrar, en nuestro caso, el nombre del Lugar y una imágen 14 00:02:00,047 --> 00:02:09,767 Para el nombre del lugar, necesitamos Node: Title, dentro del grupo Node 15 00:02:11,453 --> 00:02:20,533 Configuramos lo que queremos mostrar del nombre del Lugar, quitamos la etiqueta y hacemos que se linke el nombre al nodo correspondiente 16 00:02:21,200 --> 00:02:25,200 El siguiente campo a mostrar sera la imagen del lugar 17 00:02:25,200 --> 00:02:29,200 Y buscamos en el grupo Content, donde se encuentran los campos expuestos por CCK 18 00:02:29,633 --> 00:02:37,633 Seleccionamos Content: Imagen (field_lugar_imagen) que corresponde al campo imagen del tipo de contenido Lugar 19 00:02:38,193 --> 00:02:43,433 Y configuramos el campo a mostrar 20 00:02:43,980 --> 00:02:47,900 Eliminamos la etiqueta seleccionando Label "None" 21 00:02:47,987 --> 00:02:55,667 Y seleccionamos el numero de imagenes a mostrar (1) empezando por la primera (0) 22 00:02:56,667 --> 00:03:05,667 Ahora elegimos el formato en el que se verá la imagen. 23 00:03:06,700 --> 00:03:12,700 Nos mostrara aquellos por defecto junto a los que hayamos creado con ImageCache 24 00:03:12,753 --> 00:03:18,193 Seleccionamos el que mas nos convenga, pero sin seleccionar que se linke a su nodo 25 00:03:18,380 --> 00:03:25,940 Si queremos que el link sea correcto cuando usamos Relationships, debemos seleccionar la opcion "Link this field to its node" 26 00:03:28,353 --> 00:03:42,593 En el Live Preview podemos ver todos los Lugares con una foto proporcionada por el preset expuesto de ImageCache 27 00:03:43,367 --> 00:03:48,367 Podemos cambiar el estilo en el que se muestra en la opcion basica Style 28 00:03:50,333 --> 00:03:54,333 Seleccionamos Grid para el ejemplo 29 00:03:55,367 --> 00:03:58,367 Y dos columnas, para que quepa en pantalla 30 00:04:03,733 --> 00:04:13,733 Pasamos a la configuracion de Relationships. Necesitamos relacionar Viaje con Lugar para saber los Lugares a los que el usuario ha viajado 31 00:04:14,400 --> 00:04:18,400 Seleccionamos el grupo Content, el que expone CCK 32 00:04:18,833 --> 00:04:25,833 Y elegimos Content: Lugar (field_viaje_lugar) que es el nodereference que vincula el Viaje con el Lugar 33 00:04:26,267 --> 00:04:34,267 Es necesario marcar "Require this relationship" para que se nos muestre solamente los Lugares a los que el usuario ha Viajado 34 00:04:35,200 --> 00:04:43,200 Ya tenemos la relacion creada, ahora vamos a especificar el argumento: El id del usuario del que queremos mostrar los Lugares visitados 35 00:04:43,407 --> 00:04:48,167 Añadimos un argumento con el boton '+' de la seccion Arguments 36 00:04:48,287 --> 00:04:55,807 Y seleccionamos del group User el User: User uid 37 00:04:55,980 --> 00:05:03,580 La opcion "Provide default argument" nos permite pasarle un argumento a la vista via URL o sesion del usuario 38 00:05:03,640 --> 00:05:12,400 En este caso vamos a elegir que coja el User ID de la direccion URL del navegador 39 00:05:14,133 --> 00:05:24,133 Ahora vamos a probar el funcionamiento utilizando la caja de texto "Arguments" del Live Preview 40 00:05:25,100 --> 00:05:29,100 No salen las imagenes ¿Por qué pasa esto? 41 00:05:29,260 --> 00:05:36,900 Tenemos que modificar el campo de imagen que mostramos para que utilice la Relationship que hemos definido 42 00:05:37,207 --> 00:05:44,367 Ahora el campo imagen toma los datos del tipo de contenido Lugar, y no del de Viaje 43 00:05:45,400 --> 00:05:53,400 Si probamos más argumentos, vemos que nos muestra las imagenes de los lugares a los que cada usuario ha viajado 44 00:05:54,000 --> 00:05:58,000 ¿Pero que pasa si en lugar el ID del usuario se usa el nombre? 45 00:05:58,567 --> 00:06:03,567 No muestra resultados, pero podemos modificar el argumento para que funcione con nombres de usuarios y no IDs 46 00:06:04,633 --> 00:06:11,633 En las opciones de configuracion del argumento, podemos forzar que use nombres de usuario 47 00:06:11,667 --> 00:06:18,667 Seleccionamos "User" en las opciones de "Validator" 48 00:06:19,333 --> 00:06:23,173 Y seleccionamos la opcion "Only allow string usernames" 49 00:06:25,633 --> 00:06:43,033 Ahora nuestra vista funciona con nombres de usuarios 50 00:06:44,500 --> 00:06:50,500 Aunque aun nos queda una cosa por modificar: En lugar de mostrarse los nombres de los Lugares, se nos muestra el titulo de los Viajes 51 00:06:50,673 --> 00:07:00,233 Necesitamos modificar el campo Node: Title para que se muestre utilizando la Relationship de Lugar 52 00:07:05,767 --> 00:07:18,767 Solamente nos queda añadir un Display de tipo Page a la vista para poder acceder a ella via URL 53 00:07:19,633 --> 00:07:29,633 Le asignamos un path 54 00:07:31,333 --> 00:07:40,333 Y guardamos la vista! 55 00:07:40,000 --> 00:07:46,000 Podemos acceder a la vista mediante la opcion View "Page" o tecleando el path en la barra de direcciones 56 00:07:46,300 --> 00:07:50,300 Si no le pasamos argumento, no se muestran datos, se puede cambiar este comportamiento en las opciones del argumento 57 00:07:51,067 --> 00:07:57,067 Si le añadimos el nombre del usuario en la URL, veremos los Lugares visitados por cada uno de ellos. 58 00:07:58,120 --> 00:08:11,120 Espero que os haya sido de utilidad! http://cambrico.net