ฉันเห็นคำถามสองสามข้อ (นั่นคือคำถามนี้ ) ที่ SO เกี่ยวกับการเพิ่มค่าบูลีนเริ่มต้นให้กับคอลัมน์ที่มีอยู่ ดังนั้นฉันจึงลองใช้change_column
ข้อเสนอแนะ แต่ฉันต้องไม่ทำถูก
ฉันเหนื่อย:
$ change_column :profiles, :show_attribute, :boolean, :default => true
ซึ่งผลตอบแทน -bash: change_column: command not found
จากนั้นฉันก็วิ่ง:
$ rails g change_column :profiles, :show_attribute, :boolean, :default => true
...และ
$ rails change_column :profiles, :show_attribute, :boolean, :default => true
จากนั้นก็วิ่งrake db:migrate
แต่ค่ายังคงอยู่:show_attribute
nil
ในคำถามที่ฉันอ้างถึงข้างต้นมันบอกว่าใน PostgreSQL คุณต้องอัปเดตด้วยตนเอง เนื่องจากฉันใช้ PostgreSQL ฉันได้เพิ่มสิ่งต่อไปนี้ในการcreate_profiles
ย้ายข้อมูลของฉัน:
t.boolean :show_attribute, :default => true
มีคนบอกฉันว่าฉันทำอะไรผิดที่นี่
up
เมธอดในการโอนย้ายซึ่งเป็นคลาสใหม่ที่จะสร้างขึ้นใน db / migrate / (ในdown
วิธีการที่ควรจะเขียนเพื่อยกเลิกสิ่งที่up
ไม่.)rake db:migrate
ทำการเปลี่ยนแปลงที่แล้ว