Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails3 jquery自动完成不同的值_Ruby On Rails_Jquery Ui_Ruby On Rails 3_Jquery Ui Autocomplete - Fatal编程技术网

Ruby on rails Rails3 jquery自动完成不同的值

Ruby on rails Rails3 jquery自动完成不同的值,ruby-on-rails,jquery-ui,ruby-on-rails-3,jquery-ui-autocomplete,Ruby On Rails,Jquery Ui,Ruby On Rails 3,Jquery Ui Autocomplete,我在具有非唯一值的字段上使用,但我希望它检索的结果不会重复。关于如何实现这一点有什么想法吗?我在项目中遇到了同样的问题,我通过以下方式解决了它: 我在vendor/plugin目录中安装了Rails3jQuery自动完成插件 我更改了helpers.rb文件,如下所示: 我从json文件中删除id,然后检索uniq值。 因为我不需要身份证,所以对我来说很好。我想如果我需要这个id,我可以把它放在额外的数据中,但我不确定 我刚刚完成了这个项目的修改:git://github.com/marciom

我在具有非唯一值的字段上使用,但我希望它检索的结果不会重复。关于如何实现这一点有什么想法吗?

我在项目中遇到了同样的问题,我通过以下方式解决了它:

  • 我在vendor/plugin目录中安装了Rails3jQuery自动完成插件
  • 我更改了helpers.rb文件,如下所示:
  • 我从json文件中删除id,然后检索uniq值。 因为我不需要身份证,所以对我来说很好。我想如果我需要这个id,我可以把它放在额外的数据中,但我不确定


    我刚刚完成了这个项目的修改:git://github.com/marciomr/rails3-jquery-autocomplete.git由于我自己也遇到了这个问题,我想我会为后代记录我自己的解决方案,因为它不需要编辑gem的源代码。这是为官方维护的gem分叉:

    您可以通过控制器中的autocomplete块直接处理json编码,我们可以利用它来更改记录数组

    下面是一个示例,其中我们获得了学生就读的学校的唯一列表:

    autocomplete :student, :school do |items|
      ActiveSupport::JSON.encode( items.uniq{ |i| i["value"] } )
    end
    
    “items”是一个散列数组,默认情况下包含一个id、一个标签和一个值,因此它只将唯一的值传递给json编码器(由您选择)

    autocomplete :student, :school do |items|
      ActiveSupport::JSON.encode( items.uniq{ |i| i["value"] } )
    end