Tek bir yml yapılandırma dosyasını içe aktarma


22

Tek bir yml yapılandırma dosyasını yolunu belirleyerek içe aktarmak mümkün müdür?

Veya belirli bir modülde bulunan bir grup yml dosyası mı?


Yapılandırma modülünü etkinleştirip ardından tek içe aktarma sayfasını kullanarak yapabilirsiniz.

@IvanJaros, yapılandırmayı ve tek içe aktarma sayfasının yolunu nasıl etkinleştireceğinizi ayrıntılarıyla bir cevaba açıklayabilir misiniz? Aynı sonuçları drush veya drupal konsol ile elde etmenin bir yolu var mı? Eğer işe yararsa, cevabı kabul edeceğim. Şerefe!
David Riccitelli

i config / sync dizinine dosya koymak ve sadece drush cim çalıştırmak sanırım, ive her zaman tek yapılandırma dosyası için ui kullanılır.

Bu, senkronizasyon dizinindeki tüm dosyaları içe aktarır .
David Riccitelli

Yanıtlar:


15

Kullanabilirsiniz

$ drush cim --partial --source=only-few-configs/

Yardımınız şöyle diyor:

$ drush cim --help
Import config from a config directory.

Examples:
 drush config-import --partial             Import configuration; do not remove missing configuration.

Arguments:
 label                                     A config directory label (i.e. a key in $config_directories array in 
                                           settings.php). Defaults to 'sync'

Options:
 --partial                                 Allows for partial config imports from the source directory. Only updates and new 
                                           configs will be processed with this flag (missing configs will not be deleted).   
 --preview=<list>                          Format for displaying proposed changes. Recognized values: list, diff. Defaults   
                                           to list.                                                                          
 --source                                  An arbitrary directory that holds the configuration files. An alternative to      
                                           label argument

Aliases: cim

3
Bu harika, ama bir dosyayı içe aktarmak istiyorsanız dosyayı başka bir kısmi dizine taşımalısınız? Bu garip, değil mi?
rreiss

14

Aşağıdaki komutu çalıştırarak bir yapılandırmayı içe aktarabilirsiniz:

 drupal config:import:single

Birden fazla içe aktarma çalıştırmaya çalışıyorsanız bunun için bir zincir oluşturabilirsiniz.

Komut Belgeleri - config: import: single


3
Ayrıca drush için bir seçenek var mı?
Benedikt

5
Lando / Docker kullanıcıları için ipucu - bir kapta çalışırken tam yolu belirtmeniz gerekir; örneğin drupal config:import:single --directory="/app/config/sync" --file="foo.settings.yml", / app için yalnızca config / sync yerine - aksi halde [ERROR] değerini elde edemezsiniz . (Neyse ki Drupal Console'un kaynak kodu güzel ve hata ayıklaması kolaydır.)
William Turrell

4

Drush veya Drupal konsolu yüklü değilse, lütfen aşağıdaki adımları kullanın (D 8.0.1'de başarıyla yürütüldü):

  1. Yönetim-> Yapılandırma-> Yapılandırma Senkronizasyonu bölümüne gidin. Yapılandırma tek bir öğe veya tüm site için dışa aktarılabilir. Tek bir user.mail.yml dosyası için yaptım. Gerekli yapılandırmayı dışa aktarın.
    1. Dışa aktarılan yapılandırmadaki değişiklikleri değiştirin.
    2. Değiştirilmiş yapılandırmayı içe aktarın
    3. İçe aktarma başarılı olduktan sonra, var olan verileri config ve cache_config tablolarından temizlediğinizden emin olun (Veritabanının dökümünü alın ve yapılandırma anahtar kelimelerini arayın. Bu şekilde girdinin bulunduğu tabloları bileceksiniz.)

Not - Daima yedek alın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.