我有一个用于创建Event
的表单,其中我想要一个填充了Artist
实例的下拉菜单。无论用户选择什么,都需要保存为EventArtist
连接表的实例。此联合表有两列:artist_id
和event_id
。
这是erb形式的草图:
<%= form_for :event, url: {action: "create"}, html: {class: "nifty_form"} do |f| %>
<%= f.select(
"event.artist",
options_from_collection_for_select(Artist.all, "id", "name")
) -%> <br />
<%= f.submit "Create" %><br />
<% end %>
EventArtist
型号:
class EventArtist < ApplicationRecord
belongs_to :event
belongs_to :artist
end
就像现在一样,在event_controller的new
定义中没有任何内容。
在初始种子文件中,这是如何实现的,如何以erb形式实现这样的东西?
artist = Artist.create(name: "name", bio: "bio")
event = Event.create(name: "event name",
date: DateTime.new(2016,2,3,10,0,0,'+7'),
venue_id: venue.id,
description: "desc")
event.artists << artist