select2删除tag_list项

时间:2016-01-04 00:22:50

标签: activeadmin select2-rails select2

尝试让Select2删除一个项目并找出为什么它会在更新时不断添加新标记。

使用Select2.JS V3.5

关注ActiveAdmin / Select2 example

当我尝试删除某个项目时,它不会将其删除。它还最终将标记列表组合到新的STRING中,从而创建新标记。即如果我有[“play”,“doe”]并且我更新另一个字段,它会创建一个名为“play doe”的新标签,从而产生[“play”,“doe”,“play doe”]。每次更新时都会继续。

这是我的JS代码

// Generated by CoffeeScript 1.9.3
$(document).ready(function() {
 $('.tagselect').each(function() {
   var placeholder, saved, url;
   placeholder = $(this).data('placeholder');
   url = $(this).data('url');
   saved = $(this).data('saved');
   $(this).select2({
     tags: true,
     placeholder: placeholder,
     minimumInputLength: 3,
     allowClear: true,
     multiple: true,
     debug: true,
     initSelection: function(element, callback) {
       saved && callback(saved);
     },
     ajax: {
       url: url,
       dataType: 'json',
       data: function(term) {
         return {
           q: term
         };
       },
       results: function(data) {
         return {
           results: data
         };
       }
     },
     createSearchChoice: function(term, data) {
       if ($(data).filter((function() {
            return this.text.localeCompare(term) === 0;
             })).length === 0) {
            return {
              id: term,
              text: term
            };
          }
        }
      });
    });
  });

1 个答案:

答案 0 :(得分:0)

看见https://github.com/mbleigh/acts-as-taggable-on/issues/676

在我的模型中添加块,修复了formtastic bug,其中所有标记作为扁平字符串与逗号分隔字符串进入。猴子补丁现在。

  SELECT GROUP_CONCAT(DISTINCT parent.place_name ORDER BY parent.lft DESC SEPARATOR ',') AS place_name
    FROM address AS node,
        address AS parent
    WHERE node.lft BETWEEN parent.lft AND parent.rgt
    GROUP BY node.id