Я пытаюсь связать две модели вместе с has_many
и belongs_to
вместе с использованием rails3-jquery-autocomplete, но не могу заставить его извлечь какие-либо данные из таблицы vocab
.
Я пытаюсь автозаполнить поле 'скиллы' данными из таблицы 'vocab'. Я могу просто передать навыки, и они правильно сохраняются в таблице «навыков», единственное, что меня беспокоит, - автозаполнение.
Буду признателен за любую помощь. Я сжал свой код только до соответствующего кода. Как примечание, у меня действительно установлен плагин, html выводит надлежащие JS и входные теги.
Заранее спасибо :) Любая помощь очень ценится.
users_controller.rb
class UsersController < ApplicationController
autocomplete :vocab, :name
def new
@user = User.new
3.times do
skill = @user.skills.build
end
end
end
user.rb
class User < ActiveRecord::Base
has_many :skills, :dependent => :destroy
accepts_nested_attributes_for :skills
end
skill.rb
class Skill < ActiveRecord::Base
belongs_to :user
end
_form.html.erb
<%= form_for(@user) do |f| %>
<% f.fields_for :skills do |builder| %>
<%= render "skill_fields", :f => builder %>
<% end %>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
_skill_fields.html.erb
<p>
<%=f.label :skill_name, "Skill" %>
<%=f.autocomplete_field :skill_name, users_autocomplete_vocab_name_path %>
</p>
routes.rb
MyApp::Application.routes.draw do
get 'users/autocomplete_vocab_name'
end
База данных
user
-id
skills
-user_id
-skill_name
vocab
-name