ruby-on-rails - json 自动完成 rails 中的错误 url

标签 ruby-on-rails json url jquery-ui-autocomplete

我在我的应用程序的几个地方使用 jquery 自动完成,包括在带有 url 的表单中:

http://www.fonsiuris.net/fr/administration/actes/nouveau/122

app/views/administration/actes 表单有这个字段:

<%= lieux.text_area :place, :value =>  params[:acte] ? @place["place"] : "", class:"field_places", data: {autocomplete_source: lieux_enum_path} %>

在 routes.rb 中:

 get 'lieux/enum' => 'lieux#enum'

这是我的 routes.rb 的第一个 url

但是,当我在文本区域中输入字母时,例如具有自动完成功能的'Dou',它指向这个url:

http://www.fonsiuris.net/fr/biblios/trouver?utf8=✓&ch_bib[aut_titre_cherche]=Douai&commit.x=6&commit.y=2&term=Dou

当我输入多个术语时,该术语会像这样添加到 url 中:

/fr/biblios/trouver?utf8=%E2%9C%93&ch_bib%5Baut_titre_cherche%5D=Douai&commit.x=5&commit.y=11&term=Paris

(Douai 和 Paris 都添加为搜索词)

它应该指向这个 url:

http://www.fonsiuris.net/lieux/enum?term=Dou

这给出了正确的结果。我在我的应用程序的几个地方使用相同的代码和相同的 javascript,它在所有其他地方都运行良好!

rails routes | 的输出grep 枚举 是:

                          lieux_enum GET    /lieux/enum(.:format)                                          lieux#enum
                       motclefs_enum GET    /motclefs/enum(.:format)                                       motclefs#enum
                 actes_enum_acte_mot GET    /actes/enum_acte_mot(.:format)                                 actes#enum_acte_mot
                    biblios_enum_rec GET    /biblios/enum_rec(.:format)                                    biblios#enum_rec
        administration_archives_enum GET    /administration/archives/enum(.:format)                        administration/archives#enum_archive
         administration_biblios_enum GET    (/:locale)/administration/biblios/enum(.:format)               administration/biblios#enum_titres {:locale=>/fr|en|nl|it/}
         administration_auteurs_enum GET    (/:locale)/administration/auteurs/enum(.:format)               administration/auteurs#enum_noms {:locale=>/fr|en|nl|it/}

到目前为止我已经尝试过:

  • 重组 routes.rb
  • 重写 form.html.erb,使其包含与我的应用程序的其他有效位置完全相同的代码
  • 到处使用相同的 javascript
  • 重新安装 jquery 和 jquery-ui :现在使用 cdn 而不是 gem - 没有任何作用 差异。

我不知道从哪里着手解决这个问题。

最佳答案

我将根据我从@thiebo 那里获得的信息提供一个更明确的答案。

<%= lieux.text_area :place, :value =>  params[:acte] ? @place["place"] : "",
     class:"field_places", data: {autocomplete_source: lieux_enum_path} %>

此字段以相同的字段名称出现两次。删除数据属性上没有自动完成成员的字段。

关于ruby-on-rails - json 自动完成 rails 中的错误 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55883040/

相关文章:

javascript - rails : How to turn JS object to array params

html - 在 CSS 和 HTML 中为聊天室创建布局

json - 阻止 gorm 在 where 子句中提示 Unknown column ‘users.deleted_at’

android - 无法在 Android 中使用 Aquery 获取 JsonObject 值

python - networkx - 将图转储到带有权重的 JSON 中

ruby-on-rails - 回形针 - 单击缩略图以在弹出窗口中显示原始图像

ruby-on-rails - 使用carrierwave清理tmp目录

c++ - 帮助我理解这个 URL 解码器 :

Python:如何检查字符串是否是有效的 IRI?

model-view-controller - 如何在 Zend Framework (1.11) Controller 操作中生成绝对 URL?