【问题标题】:rails3-jquery-autocomplete and mongomapper gives NoMethodError undefined method `table_name`rails3-jquery-autocomplete 和 mongomapper 给出 NoMethodError 未定义的方法`table_name`
【发布时间】:2012-09-01 10:25:57
【问题描述】:

我正在尝试使用 rails3-jquery-autocomplete 进行自动完成。我有使用 mongomapper 的 rails 应用程序并具有以下模型:

class Port
  include MongoMapper::Document
  set_collection_name "ports__status"
  key :device, String

在我的控制器中

class PortsController < ApplicationController
  autocomplete :port, :device

我的任何路线是:

resources :ports do
  get :autocomplete_port_device, :on :collection
end

所以,在我看来,我有

<form class="uri_replace" method="get" action="/ports/%device%/">
  <input class="inline_replace" name="device" data-autocomplete="/ports/autocomplete_port_device"></input>
  <input type="submit">
</form>

(我对action 进行了重写,以提交输入值以获得更“宁静”的查询界面)

所以我加载了页面,在我在表单中输入内容后我可以看到 ajax 请求......但是,我收到以下错误:

NoMethodError in PortsController#autocomplete_port_device

  undefined method `table_name' for Port:Class

有什么建议吗?

【问题讨论】:

    标签: jquery ruby-on-rails-3 autocomplete mongomapper


    【解决方案1】:

    rails3-jquery-autocomplete gem 可以与 MongoDB 一起使用,但前提是您使用 mongoid gem,不能 mongomapper

    参考:https://github.com/crowdint/rails3-jquery-autocomplete#mongoid

    【讨论】:

      猜你喜欢
      • 2020-10-17
      • 2013-09-14
      • 2013-04-24
      • 2015-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-29
      相关资源
      最近更新 更多