मुझे एक माइग्रेशन मिला है जो एक बूलियन मान का उपयोग करता है और इसके दृश्य में एक चेकबॉक्स उत्पन्न करता है। हालांकि, कोई फर्क नहीं पड़ता कि मैं क्या क्लिक करता हूं, डेटाबेस में सहेजा गया मान प्रभावित नहीं होता है।रेल पर रूबी - चेकबॉक्स डेटाबेस में सहेज नहीं रहा है?
मेरे प्रवास इस तरह दिखता है:
def self.up
create_table :blogposts do |t|
t.string :title
t.text :body
t.boolean :allow_comments, :default => false
t.references :author
t.references :lasteditor
t.timestamps
end
end
मेरा विचार इस तरह दिखता है:
<% semantic_form_for([:controlpanel, @blogpost]) do |form| %>
<%= form.error_messages %>
<% form.inputs do %>
<%= form.input :title %>
<%= form.input :body %>
<%= form.input :allow_comments %>
<% end %>
<%= form.buttons %>
कौन सा निम्न HTML पैदा करता है:
<li class="boolean required" id="blogpost_allow_comments_input">
<label for="blogpost_allow_comments">
<input id="blogpost_allow_comments" name="blogpost[allow_comments]" type="checkbox" value="1" />
<input name="blogpost[allow_comments]" type="hidden" value="0" />Allow comments
<abbr title="required">*</abbr>
</label>
</li>
नियंत्रक बस है मचान द्वारा उत्पन्न डिफ़ॉल्ट।
यदि मैं माइग्रेशन में डिफ़ॉल्ट सेट करता हूं, तो वह मान हमेशा डेटाबेस में सहेजा जाता है। यदि मैं डिफ़ॉल्ट सेट नहीं करता हूं, तो यह हमेशा शून्य होता है।
क्या कोई भी समाधान सुझा सकता है, क्या गलत हो सकता है पर सुझाव?
किसी भी सलाह की सराहना की।
धन्यवाद।
हाय, यह कोई फर्क नहीं पड़ता – Dan