У меня есть модель:
class EvidenceType < ActiveRecord::Base
has_many :evidences
attr_accessible :name
end
Контроллер:
class EvidencesController < ApplicationController
autocomplete :evidence_type, :name
На мой взгляд:
<%= form_tag do %>
<%= autocomplete_field_tag 'evidence', '', :autocomplete => autocomplete_evidence_type_name_evidences_path %>
<% end %>
В Routes.rb:
resources :evidences do
get :autocomplete_evidence_type_name, :on => :collection
end
Рейк-маршруты дают мне:
autocomplete_evidence_type_name_evidences GET /evidences/autocomplete_evidence_type_name(.:format) {:action=>"autocomplete_evidence_type_name", :controller=>"evidences"}
Когда я начинаю печатать в поле автозаполнения, я вижу запрос в журнале рельсов:
Started GET "/autocomplete/evidences/autocomplete_evidence_type_name?term=co" for 127.0.0.1 at Tue Oct 11 17:45:57 +0100 2011
ActionController::RoutingError (No route matches [GET] "/autocomplete/evidences/autocomplete_evidence_type_name"):
Если я иду вручнуюна http://localhost:3000/evidences/autocomplete_evidence_type_name?term=xx, тогда я получаю желаемый фрагмент, который возвращает меня, и это заставляет меня поверить, что все, кажется, правильно склеено с помощью jquery.
Я полагаю, мне нужно добавить дополнительное автозаполнение к моемуroute (кажется хакерским?) или что мой помощник autocomplete_evidence_type_name_evidences_path должен сбросить / autocomplete с фронта.
Однако, сказав это, я подозреваю, что, возможно, я что-то делаю не так?Есть идеи?