行われたすべての変更に対してキャッシュをクリアすることは必須ですか?

キャッシュをクリアするにはもっと時間がかかりますし、CSSや機能ごとに変更を加えるたびに頻繁に行う必要があります。

代替案はありますか?

5
nl ru de

4 答え

開発中にDrupal 8のキャッシュを無効にする

モジュールやテーマを開発しているときは、Drupalのをクリアする必要があります。   よく見るキャッシュ(レンダーキャッシュ、動的ページキャッシュ、Twigキャッシュ)   適用されている変更開発のためにキャッシュを無効にすることができます。

ステップ

  1. ファイル sites/example.settings.local.phpsites/default/settings.local.php にコピーして名前を変更します。
$ cp sites/example.settings.local.php sites/default/settings.local.php
  1. sites/default/settings.php でこれらの行のコメントを外します。
if (file_exists(__DIR__ . '/settings.local.php')) {
    include __DIR__ . '/settings.local.php';
}
  1. If you want to keep CSS and JS aggregation and preprocessing, change these lines in sites/default/settings.local.php to TRUE:
$config['system.performance']['css']['preprocess'] = TRUE;
$config['system.performance']['js']['preprocess'] = TRUE;
  1. sites/default/settings.local.php で、これらの行のコメントを外します。
$settings['cache']['bins']['render'] = 'cache.backend.null';
$settings['cache']['bins']['dynamic_page_cache'] = cache.backend.null';
  1. sites/development.services.yml に次の行を追加します。
parameters:
  twig.config:
    debug: true
    auto_reload: true
    cache: false

(出典: drupal.org

7
追加された

開発中にDrupal 8のキャッシュを無効にする」のより簡単な方法はDrupalConsoleを使用することです。

drupal site:mode dev

Source - Debugging compiled Twig templates

5
追加された
これはもはや機能しません。
追加された 著者 TY1,

作業場所によります。

手順01)

a)/ admin/config/development/perfまたはmanceからキャッシュを無効にすることができます

b)ファイルをsites/example.settings.local.phpからsites/default/example.settings.local.phpにコピーしてからsettings.local.phpに置き換えることができます。このファイルについては、settings.phpから以下のコードをコメントアウトしてください。

/**
 * Load local development override configuration, if available.
 *
 * Use settings.local.php to override variables on secondary (staging,
 * development, etc) installations of this site. Typically used to disable
 * caching, JavaScript/CSS compression, re-routing of outgoing emails, and
 * other things that should not happen on development and testing sites.
 *
 * Keep this code block at the end of this file to take full effect.
 */
if (file_exists(__DIR__ . '/settings.local.php')) {
  include __DIR__ . '/settings.local.php';
}

それなら/sites/default/settings.local.phpから次のセクションをコメントアウトしてください

/**
 * Disable the render cache (this includes the page cache).
 *
 * Note: you should test with the render cache enabled, to ensure the cまたはrect
 * cacheability metadata is present. However, in the early stages of
 * development, you may want to disable it.
 *
 * This setting disables the render cache by using the Null cache back-end
 * defined by the development.services.yml file above.
 *
 * Do not use this setting until after the site is installed.
 */
$settings['cache']['bins']['render'] = 'cache.backend.null';

エラーになるかもしれません。心配しないでください。ブラウザのアドレスバーにyour_site_domain.com/rebuild.phpと入力するだけです。

手順02)

特にDrupal 8にはDrupalコンソールと呼ばれる素晴らしいツールがあります。インストールとドキュメントは素晴らしいです。サイト http://www.drupalconsole.com/ を使用して確認できます。

あなたがインストールを終えるとき、私はあなたがコマンドライン機能にもっと幸せになることを願っています。あなたが次のコマンドを使用してキャッシュをクリアすることができますように -

$ Drupal cache:rebuild

または

$ Drupal cr all
2
追加された

Source Disable Drupal 8 caching during development

ステップ

      
  1. sites/example.settings.local.phpをコピーしてsites/default/settings.local.phpに変更します
  2.   

$ cp sites/example.settings.local.php sites/default/settings.local.php

  1. Open settings.php file in sites/default and uncomment these lines:

    if (file_exists(DIR . '/settings.local.php')) { include DIR . '/settings.local.php'; }

これはDrupalの設定ファイルの一部としてローカル設定ファイルを含みます。

      
  1. settings.local.phpを開き、この行のコメントを外してnullキャッシュサービスを有効にします。
  2.   
     

$ settings ['container_yamls'] [] = DRUPAL_ROOT。   '/sites/development.services.yml';

注:development.services.ymlを作成しないでください。/sitesの下にあります

      
  1. settings.local.phpで、有効なCSSおよびJS集約を使用したい場合は、以下をTRUEに変更します。
  2.   
     

$ config ['system.performance'] ['css'] ['前処理'] = FALSE;   $ config ['system.performance'] ['js'] ['前処理'] = FALSE;

     
      
  1. settings.local.php内のこれらの行のコメントを外して、レンダリングキャッシュを無効にし、動的ページキャッシュを無効にする
  2.   
     

$ settings ['cache'] ['bins'] ['render'] = 'cache.backend.null';   $ settings ['cache'] ['bins'] ['dynamic_page_cache'] =   'cache.backend.null';

テストモジュールとテーマをインストールしたくない場合は、以下をFALSEに設定してください。

$ settings ['extension_discovery_scan_tests'] = TRUE;

     
      
  1. sitesフォルダーのdevelopment.services.ymlを開き、次のブロックを追加します(小枝キャッシュを無効にするため)
  2.   

パラメーター:   twig.config:     debug:true     auto_reload:true     キャッシュ:false

      
  1. その後、Drupalキャッシュを再構築する必要があります。さもなければあなたのウェブサイトはページリロードで予想外のエラーに遭遇するでしょう。これは   drushによって行われます。
  2.   
     

drush cr

またはDrupal 8 Webサイトから次のURLにアクセスしてください。

http://yoursite/core/rebuild.php

      
  1. 終了しました。手動でキャッシュを再構築することなく、Drupal 8で定期的に開発することができます。
  2.   
1
追加された