Ruby on rails 为什么rails选择组件不能发布空数组?
如果我写了一个日记编辑页面并设置了标签控件,如下所示:Ruby on rails 为什么rails选择组件不能发布空数组?,ruby-on-rails,forms,Ruby On Rails,Forms,如果我写了一个日记编辑页面并设置了标签控件,如下所示: <div class="field"> <%= form.label :labels, for: 'diary_labels' %> <select id="diary_labels" name="diary[labels][]" multiple="" > <option value="label1">label1</option> <option
<div class="field">
<%= form.label :labels, for: 'diary_labels' %>
<select id="diary_labels" name="diary[labels][]" multiple="" >
<option value="label1">label1</option>
<option value="label2">label2</option>
</select>
</div>
但是,如果我不选择任何内容,则put数据实际上是:
{
"diary": {
...
}
}
我想要的是:
{
"diary": {
labels: [],
...
}
}
我该怎么做呢?html的工作方式与rails无关。您不能通过HTTP发送空数组,只能发送包含空字符串的数组,如
[“”]
。您应该在控制器中处理此问题
{
"diary": {
labels: [],
...
}
}