我对class Contact < ApplicationRecord
belongs_to :state
end
class State < ApplicationRecord
CATEGORIES = [ "not-contacted", "on-going", "called"]
has_many :contacts
validates :category, inclusion: { in: CATEGORIES }
end
的关联有疑问。
以下是“链接”的模型
State
我还有一个带有以上三个状态的def new
@contact = Contact.new
@states = State.all
end
def create
@contact = Contact.new(contact_params)
if @contact.save
redirect_to contact_path(params[:id])
else
render :new
end
end
种子。
我正在为联系人创建新表单。
控制器:
<%= simple_form_for(@contact) do |f| %>
<%= f.input :last_name, label: 'Nom' %>
<%= f.input :first_name, label: 'Prénom' %>
<%= f.input :number, label: 'Téléphone' %>
<%= f.input :email, label: 'Mail' %>
<%= f.input :address, label: 'Adresse' %>
<%= f.association :state, collection: State.order(:category), prompt: "Choisir un état" %>
<%= f.input :grade, label: 'Note', collection:[1, 2, 3, 4, 5] %>
<%= f.submit 'Créer le contact', class:'btn-modifications' %>
<% end %>
查看:
State:0x00007fcb3afcfca8
但是我有一个不包含“进行中”,“被呼叫”,“未联系”列表的集合,但是我有一个列表:
tblYouTube.Filter := '[Name of YouTuber] = ' + QuotedStr(sName);
如何显示我想要的列表?
答案 0 :(得分:0)
您需要将其更改为以下
<%= f.association :state, collection: State.order(:category), label_method: :category, value_method: :id,prompt: "Choisir un état" %>