Konuyu Açan #1
Symfony projelerinde veritabanı yönetimini kolaylaştırmak ve otomatik hale getirmek amacıyla kullanılan Migration sistemi, özellikle büyük ve karmaşık projelerde büyük avantaj sağlar. Bu nedenle, Symfony Migration'un kurulum ve yapılandırma adımlarını detaylıca ele almak önemli. İşte temel adımlar:

1. Gerekli Paketlerin Kurulumu
Symfony, Migration işlemleri için Doctrine Migrations paketini kullanır. Bu paketi projeye eklemek için Composer komutunu kullanıyoruz:

KOD
1composer require doctrine/doctrine-migrations-bundle


Bu komut, Symfony ile uyumlu Doctrine Migrations bundle'ını projeye ekler ve otomatik olarak yapılandırma dosyalarını oluşturur.

2. Konfigürasyon Ayarları
Kurulumdan sonra, config/packages/doctrine_migrations.yaml dosyasını açıp, migration ayarlarını özelleştirebilirsiniz. Örneğin:

KOD
1234567
doctrine_migrations:
    migrations_paths:
        'DoctrineMigrations': '%kernel.project_dir%/migrations'
    storage:
        table_storage:
            table_name: 'migration_versions'


Burada migrations dosyalarının konumu ve migration durumlarını tutan tablo adını belirliyorsunuz.

3. Migration Dosyalarının Oluşumu ve Çalıştırılması
İlk migration dosyasını oluşturmak için şu komutu kullanabilirsiniz:

KOD
1php bin/console doctrine:migrations:diff


Bu komut, güncel veritabanı yapısıyla eşleşen yeni migration dosyasını otomatik oluşturur. Daha sonra, migration'ları uygulamak için:

KOD
1php bin/console doctrine:migrations:migrate


Bu adımlar, veritabanı yapısında yapılan değişiklikleri takip edip, otomatik olarak uygular.

4. Güncellemeler ve İpuçları
  • Migration'lar üzerinde manuel değişiklik yaparken dikkatli olun, otomatik oluşturulan dosyalarda düzenleme yapabilirsiniz.
  • Migration'ların sıralamasını ve durumunu php bin/console doctrine:migrations:status komutuyla kontrol edebilirsiniz.
  • Geliştirme ortamında yapılan değişiklikleri üretim ortamına taşırken migration'ların güncel olduğundan emin olun.


Bu temel adımlar, Symfony projelerinde Migration sisteminin sorunsuz çalışmasını sağlar ve veritabanı yönetimini büyük ölçüde kolaylaştırır.

Yanıt vermek için giriş yapmış olmalısınız.

0 alıntı seçildi