class CreateCrews < ActiveRecord::Migration
def self.up
create_table :crews do |t|
t.string :title
t.text :description
t.boolean :adult
t.boolean :private
t.integer :gender_id
t.boolean :approved, :default => false
t.timestamps
end
end
def self.down
drop_table :crews
end
end
class Crew < ActiveRecord::Base
has_many :users, :through => :crew_users
belongs_to :user
default_scope where(:approved => true)
end
Quando vado in console e creo un nuovo record, la proprietà "approvata" è impostata su true, perché?rails3 default_scope e valore di colonna predefinito nella migrazione
Come posso impostarlo automaticamente sul valore predefinito (falso) come mostrato nel mio file di migrazione?
[email protected]:~/work/ze$ rails console Loading development environment (Rails 3.0.0) ruby-1.9.2-p0 > c = Crew.new
=> #<Crew id: nil, title: nil, description: nil, adult: nil, private: nil, gender_id: nil, approved: true, created_at: nil, updated_at: nil, logo_file_name: nil, logo_content_type: nil, logo_file_size: nil, logo_updated_at: nil>
+1. Questa documentazione è in realtà assente nelle versioni precedenti dei documenti API. Ho dovuto scavare inizialmente alla fonte per scoprire perché sta succedendo così. (Ciò significa che dobbiamo contribuire maggiormente a 'docrails' (https://github.com/lifo/docrails) – Swanand
Trovo molto fastidiosa questa" funzionalità " Voglio dire, quello che voglio cercare è completamente estraneo a quello che voglio da creare. – Zequez