ile Ruby sözdizimi dependent: :destroy
Rails ifadesiyle dependent
hash anahtarı ve destroy
yalnızca bir sembol mü? has_many :orders, dependent: :destroy
yazmaKarma tuşları ve sembolleri
0
A
cevap
1
notasyonu sadece bir kısayoldur ve bunu irb
kullanarak ne anlama geldiğini görebilirsiniz:
h = { dependent: :destroy }
# => { :dependent => :destroy }
İkisi sembolleri. Bir karenin, bir sembol ya da bir dize olmasa da, numaralı herhangi bir nesne tarafından tarafından anahtarlanabileceğini unutmayın. Bu, anahtarın tutarlı bir şeye zorlanacağı çoğu dilden tamamen farklıdır.
h.keys
# => [:dependent]
h.values
# => [:destroy]
Onlar bu durumda tüm simgedirler:
anahtarların ve değerlerin türleri ne varmış örneği açabilir.
0
has_many(:orders, {:dependent => :destroy})
:dependent
aynı anahtar, has_many
için bir bağımsız değişken olarak geçirilen karma :destroy
değerdir. Ruby 1.9 tanıtılan
Bu, hemen hemen aynıdır: [** =: ”value” ve 'key:“ value ”' hash notations? **] arasında bir fark var mı? (Http://stackoverflow.com/q/8675206/479863), değil mi? Oldukça yinelenen değil ama oldukça yakın. –