2012-03-12 92 views
0

我目前有七個複選框,一個代表每週的每一天... 我希望用戶檢查任意數量的框,並保存表示當天的數字...(如星期一1,星期二2等),並將其作爲個人記錄保存在分貝...所以如果他們檢查5天,5個新記錄..rails複選框保存

但是,我的問題是,當他們檢查幾個框, 0也被輸入,沒有被選中(默認值),因此每次添加7條新記錄。

任何人都可以指向正確的方向嗎?

複選框是嵌套表單的一部分,如果其他字段在重新加載時無效,我會嘗試拒絕,但複選框不會顯示爲空。

回答

0

你用什麼幫助方法來生成這些複選框?不管它是什麼,它都會創建隱藏的默認值,如果未選中該框,將會發送到服務器。通常這是你想要的,但有時...

如果你看看該功能的文檔,可能有一個:default => :off(或類似的東西)選項來禁用這些默認值。或者你可以嘗試使用check_box_tag,這似乎不會產生默認輸入。如果這兩種方法都不適合你,那麼在普通的舊HTML中寫一個複選框真的沒什麼大不了的。

希望有幫助!

+0

<%= builder.check_box:day,{},val%>這就是我使用的 – 2012-03-12 01:08:45

+0

默認值爲0,文檔說Webs瀏覽器不應該發送它們。 – 2012-03-12 01:15:07

+0

@ BenFrank - 是的。這是[check_box](http://apidock.com/rails/ActionView/Helpers/FormHelper/check_box)標記,它使默認的「0」值。我快速閱讀鏈接的文檔沒有顯示任何選項來關閉它,所以你會想看看check_box_tag。乾杯! – 2012-03-12 01:15:49