我正在使用Rails 4和Simple Form创建一个表单,我要求用户提供一堆数据。我通过以下方式将下拉选择器包含在模型关联中:
<%= f.association :location, collection: Location.order("LOWER(name)").all, required: true, include_blank: false, prompt: "Choose location..." %>
但是,当用户不主动选择任何内容并在下拉列表中选择默认提示消息时,我会收到undefined method 'name' for nil:NilClass
错误。
如何使应用将用户发送回窗体并突出显示他需要在下拉列表中选择一个位置?就像当您有一个必需的输入字段并且没有提供数据时发生的那样......
谢谢!
在表单中添加required: true
实际上并没有使 :location 成为模型上的必需属性。
您需要向模型添加以下内容:
validates :location, presence: true