I want to list a user's comments. The user is given by the url. The problem is that it shows me comments from other users.

Here's my setup and views Query:

http://i52.tinypic.com/2rrrnnp.jpg

SELECT node_comment.title AS node_comment_title, node_comment.nid AS node_comment_nid, node_comment__comment.subject AS node_comment__comment_subject, node_comment__comment.cid AS node_comment__comment_cid, node_comment__comment.nid AS node_comment__comment_nid
FROM
{comment} comment
INNER JOIN {users} users_comment ON comment.uid = users_comment.uid
INNER JOIN {node} node_comment ON comment.nid = node_comment.nid
LEFT JOIN {comment} node_comment__comment ON node_comment.nid = node_comment__comment.nid
WHERE (( (users_comment.uid = '1') ))
LIMIT 10 OFFSET 0

Comments

Alcaparra’s picture

This is the view:

/* Display: Página */
$handler = $view->new_display('page', 'Página', 'page_1');
$handler->display->display_options['defaults']['relationships'] = FALSE;
/* Relationship: Comentario: Usuario */
$handler->display->display_options['relationships']['uid']['id'] = 'uid';
$handler->display->display_options['relationships']['uid']['table'] = 'comment';
$handler->display->display_options['relationships']['uid']['field'] = 'uid';
$handler->display->display_options['relationships']['uid']['required'] = 1;
/* Relationship: Comentario: Nodo */
$handler->display->display_options['relationships']['nid']['id'] = 'nid';
$handler->display->display_options['relationships']['nid']['table'] = 'comment';
$handler->display->display_options['relationships']['nid']['field'] = 'nid';
$handler->display->display_options['relationships']['nid']['required'] = 1;
$handler->display->display_options['defaults']['fields'] = FALSE;
/* Campo: Nodo: Título */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['relationship'] = 'nid';
$handler->display->display_options['fields']['title']['exclude'] = TRUE;
$handler->display->display_options['fields']['title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['title']['alter']['html'] = 0;
$handler->display->display_options['fields']['title']['element_label_colon'] = 1;
$handler->display->display_options['fields']['title']['element_default_classes'] = 1;
$handler->display->display_options['fields']['title']['hide_empty'] = 0;
$handler->display->display_options['fields']['title']['empty_zero'] = 0;
$handler->display->display_options['fields']['title']['link_to_node'] = 1;
/* Campo: Comentario: Título */
$handler->display->display_options['fields']['subject']['id'] = 'subject';
$handler->display->display_options['fields']['subject']['table'] = 'comment';
$handler->display->display_options['fields']['subject']['field'] = 'subject';
$handler->display->display_options['fields']['subject']['relationship'] = 'nid';
$handler->display->display_options['fields']['subject']['label'] = '';
$handler->display->display_options['fields']['subject']['alter']['alter_text'] = 1;
$handler->display->display_options['fields']['subject']['alter']['text'] = 'Ha escrito una valoración de [title]';
$handler->display->display_options['fields']['subject']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['subject']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['subject']['alter']['trim'] = 0;
$handler->display->display_options['fields']['subject']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['subject']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['subject']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['subject']['alter']['html'] = 0;
$handler->display->display_options['fields']['subject']['element_label_colon'] = 1;
$handler->display->display_options['fields']['subject']['element_default_classes'] = 1;
$handler->display->display_options['fields']['subject']['hide_empty'] = 0;
$handler->display->display_options['fields']['subject']['empty_zero'] = 0;
$handler->display->display_options['fields']['subject']['link_to_comment'] = 1;
$handler->display->display_options['defaults']['arguments'] = FALSE;
/* Argument: Usuario: Uid */
$handler->display->display_options['arguments']['uid']['id'] = 'uid';
$handler->display->display_options['arguments']['uid']['table'] = 'users';
$handler->display->display_options['arguments']['uid']['field'] = 'uid';
$handler->display->display_options['arguments']['uid']['relationship'] = 'uid';
$handler->display->display_options['arguments']['uid']['default_action'] = 'empty';
$handler->display->display_options['arguments']['uid']['style_plugin'] = 'default_summary';
$handler->display->display_options['arguments']['uid']['title'] = 'Comentarios del usuario %1';
$handler->display->display_options['arguments']['uid']['default_argument_type'] = 'fixed';
$handler->display->display_options['arguments']['uid']['validate_fail'] = 'empty';
$handler->display->display_options['arguments']['uid']['break_phrase'] = 0;
$handler->display->display_options['arguments']['uid']['not'] = 0;
$handler->display->display_options['path'] = 'comentarios/%';
merlinofchaos’s picture

Status: Active » Fixed

It's the second field. It's on the node relationship when it should be on no relationship. Bedcause it's attached to the node relationship, it's bringing all comments through an extra join that you don't want.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.