Я пытаюсь настроить форму, которая принимает некоторую информацию о песне.Прямо сейчас название песни и исполнитель песни.
Вот мой код.
Модель песни * EDIT
class Song < ActiveRecord::Base
has_one :song_artist_map
has_one :artist, :through => :song_artist_map
accepts_nested_attributes_for :artist
end
Модель исполнителя
class Artist < ActiveRecord::Base
has_many :song_artist_maps
has_many :songs, :through => :song_artist_maps
end
SongArtistMap Model
class SongArtistMap < ActiveRecord::Base
belongs_to :song
belongs_to :artist
end
Контроллер песен
def new
@song = Song.new
@song.artist.build
end
И внутри своей формы я добавил этот код
<% f.fields_for :artist do |a| %>
<li><%= a.label :name %></li>
<li><%= a.text_field :name %></li>
<% end %>
Прямо сейчас ничего не отображается вмоя форма для художников.
Поэтому мне нужен способ, чтобы иметь возможность добавить Исполнителя из формы при добавлении песни, а затем выполнить сопоставление или просто сопоставить, если исполнитель уже существует в моей базе данных.
Я знаю, что я делаю что-то очень неправильно, кто-нибудь может помочь?Спасибо!