2016-07-25 14 views
0

Ich versuche, ein Texteingabefeld mit Autocomplete mit Schienen Rails-jquery-Autocomplete zu erstellen. Ich habe versucht, Schritt für Schritt den Anweisungen auf dieser Seite zu folgen: https://github.com/bigtunacan/rails-jquery-autocomplete, aber ich konnte das Eingabefeld nicht dazu bringen, irgendeinen vorgeschlagenen Text anzuzeigen. Kann mir bitte jemand helfen zu erkennen, wo ich falsch gemacht habe? Danke im Voraus.Rails 4: Rails-jquery-Autocomplete zeigt keinen Vorschlag

Im Folgenden sind ein Ausschnitt aus meinem Code:

Controller:

class LabController < ApplicationController 
    autocomplete :ingredient, :name 

    def index 
    @recipe = Recipe.where(station: "Laboratory") 

    end 
end 

Ausblick:

.container 
    = autocomplete_field_tag 'test', '', autocomplete_ingredient_name_lab_index_path 

Route:

resources :lab, only: [:index, :show] do 
    get :autocomplete_ingredient_name, :on => :collection 
    end 

Datenbank:

create_table "ingredients", force: :cascade do |t| 
    t.string "name",  limit: 255 
    t.datetime "created_at",    null: false 
    t.datetime "updated_at",    null: false 
    end 
+0

Gibt es einen Fehler auf der Konsole? – hgsongra

+0

Anstelle von 'gem 'rails-jquery-autocomplete'' können Sie Token Fields verwenden http://railscasts.com/episodes/258-token-fields, es ist sehr einfach zu integrieren und leicht. – hgsongra

+0

Hav Sie benötigt jquery, jquery_ujs, jquery-ui/autocomplete, autocomplete-rails in Ihrer application.js https://github.com/bigtunacan/rails-jquery-autocomplete#rails-4-and-higher –

Antwort

0

Das Problem ist der Router, sollten Sie die folgenden Schritte

Controller:

class ArtistsController < ApplicationController 
    autocomplete :category, :name 
end 

Ausblick:

<%= f.autocomplete_field :tag_list, autocomplete_category_name_artists_path %> 

Route:

resources :artists do 
get :autocomplete_category_name, on: :collection 
end