diff --git a/server/AyaNova/DataList/DataListSqlFilterCriteriaBuilder.cs b/server/AyaNova/DataList/DataListSqlFilterCriteriaBuilder.cs index c1eaee27..f62e06c1 100644 --- a/server/AyaNova/DataList/DataListSqlFilterCriteriaBuilder.cs +++ b/server/AyaNova/DataList/DataListSqlFilterCriteriaBuilder.cs @@ -530,6 +530,12 @@ namespace AyaNova.DataList //for initial release a tag filter is inclusive of all tags only //in other words all tags presented must be in record to match (simple AND) //select * from awidget where awidget.tags @> array['blah','blah3'::varchar(255)] + + //NOTE: After coding this discovered *can* do a LIKE query with tags like this: + //(array_to_string(awidget.tags,',') like '%zo%') + //implemented that way in picklistquery builder + //also ilike is a postgres case insensitive like but works on current locale of server which + //sounds like it might fuck up when using other languages so... StringBuilder sbTags = new StringBuilder(); sbTags.Append("@> array["); List normalizedTags = TagUtil.NormalizeTags(sTags); diff --git a/server/AyaNova/PickList/PickListSqlBuilder.cs b/server/AyaNova/PickList/PickListSqlBuilder.cs index 05818e87..85a5ef67 100644 --- a/server/AyaNova/PickList/PickListSqlBuilder.cs +++ b/server/AyaNova/PickList/PickListSqlBuilder.cs @@ -18,7 +18,7 @@ namespace AyaNova.PickList internal static string Build(IAyaPickList pickList, List templateColumnNames, string autoCompleteQuery, bool IncludeInactive) { - + //TODO: custom template routes and tests //TODO: TESTS FOR ALL FORMS OF QUERY (tags, non text fields etc) //TODO: Clean out unnneeded stuff in AyaPickListFieldDefinition (stuff from datalist copied over)