Ruby on Rails

Gelişmiş migrasyonlar

Karmaşık migrasyonlar, reversible migrations, veri migrasyonları, rollbacks, DB kısıtlamaları ile validasyonlar, safe migrations

20 mülakat soruları·
Mid-Level
1

Bir Rails migrasyonunda change ve up/down metotları arasındaki fark nedir?

Cevap

change metodu, Rails 3.1 ile gelen ve Rails'in ters işlemi otomatik olarak çıkarmasını sağlayan basitleştirilmiş bir söz dizimidir. add_column veya create_table gibi yaygın işlemlerin çoğunda çalışır. up ve down metotları, uygulama ve rollback işlemleri üzerinde açık denetim sağlar; bu, veri silme veya karmaşık dönüşümler gibi Rails'in tersini otomatik olarak çıkaramadığı durumlarda gereklidir.

2

Rails ters işlemi otomatik olarak çıkaramadığında bir migrasyon nasıl reversible hale getirilir?

Cevap

reversible bloğu, bir change metodu içinde up ve down işlemlerini açıkça tanımlamaya olanak tanır. Bu özellikle remove_column gibi işlemler için kullanışlıdır; çünkü Rails, rollback sırasında sütunu yeniden oluşturmak için sütunun türünü ve seçeneklerini bilmek zorundadır. reversible bloğu, modern change söz dizimini korurken up/down esnekliğini sunar.

3

Birden fazla migrasyonu tek bir işlemde geri almaya hangi komut olanak tanır?

Cevap

rails db:rollback STEP=n komutu, en son çalıştırılan n migrasyonu geri almayı sağlar. Örneğin STEP=3, son üç migrasyonu çalıştırılma sırasının tersine göre geri alır. STEP seçeneği olmadan yalnızca son migrasyon geri alınır. Bu komut, geliştirme sırasında veritabanını önceki bir duruma hızlıca döndürmek için kullanışlıdır.

4

Veri migrasyonlarında ActiveRecord model referansları kullanmaktan neden kaçınılmalıdır?

5

Üretimde büyük bir tabloda veri taşıma işlemi yapmak için en iyi uygulama nedir?

+17 mülakat soruları

Bir sonraki mülakatın için Ruby on Rails'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla