Setup:

  • create an optional multivalue cck text field using the "checkbox" options widget; give it 3 or more pre-defined values ("cute", "cuddly", "lumpy")
  • create an "only lumpy" view with a filter on that field. Select, "Is None Of" and both "cute" and "cuddly".
  • create node 1 that is both "lumpy" and "cute"
  • create node 2 that is only "lumpy"
  • create node 3 that is both "cute" and "cuddly"
expected result of view
only show node 2
actual result of view
shows both nodes 1 and 2

What this seems to come down to is that the SQL comparisons are being done against the multivalue text field. So when it checks that something is not "cute" and not "cuddly", if there is only one value it works fine (node 2). Here, it's only doing one comparison against the string. But when it goes to check a field with more than one value (node 1), it checks to see if "lumpy" is not "cute" and not "cuddly" (which is true) but then goes to check if "cute" is not "cute" and not "cuddly" (which is false). In a sense, it's doing an "OR" of all the sub comparisons, when it really should be doing an "AND".

For some reason, this works just fine on the same setup using taxonomy terms instead of a text field.

Comments

xxvelcrar’s picture

Just to follow up to my own report:

This doesn't require there to be two items selected for the "is none of" field. Provided that more than one item are selected in the node and the view is trying to exclude one of them, this failure mode will still manifest.

esmerel’s picture

Status: Active » Closed (won't fix)

No commits are being made to 1.x - it's best to move on to 6.x-2.x