我正在嘗試爲包含從哈希集合中填充的選擇框的模型設置表單。如何用散列填充選擇標記並將值正確保存到數據庫?
具體來說,我的員工模式有作用的哈希:
ROLES = {1 => "Lead", 2 => "Engineer", 3 => "Intern" }
和驗證程序:
validates_presence_of :role
理想情況下,我想用這個信息來填充選擇框的形式。例如:
<%= form_for @employee do |f| %>
<%= label_tag :role, "Role" %>
<%= f.select :employee, :role, Employee::ROLES %>
<% end %>
儘管我可以在選擇框中顯示值,但數據不會被序列化。相反,我收到驗證消息「角色不能爲空」。
我控制器的創建方法是這樣的:
def create
@employee = Employee.new(params[:employee])
if @employee.save
redirect_to employees_path, :notice => "Successfully created a new employee."
else
render :action => 'new'
end
end
最後,我的問題是我如何使用模型中的散列和正確的選擇框的值保存到列上填充選擇框數據庫中的員工模型?
應該有一個Array – apneadiving 2011-05-19 21:42:11
做什麼是選擇標籤的生成的輸出? – 2011-05-19 21:54:11
– Tom 2011-05-19 22:49:04