Drupal Console 및 Drush로 Drupal 개발 가속화

게시 됨: 2022-02-22

우리는 Drupal 8이 어떻게 사용자를 위한 디지털 경험을 현대화했을 뿐만 아니라 Drupal 개발자를 위한 개발 작업을 용이하게 했는지에 대해 광범위하게 작성했습니다. 이 기사에서 우리는 Drupal 코드, 모듈 및 설치 작업 방식을 크게 단순화하고 개선한 Drupal 8/9 유틸리티 도구인 Drupal Console과 Drush에 대해 논의할 것입니다.

드루팔 콘솔

드루팔 콘솔이란

Drupal 8의 발전 이후로, 새로운 모듈을 구축하기 위해서는 많은 상용구 코드를 추가할 필요가 있게 되었습니다. 물론 단순히 코드를 복사하여 붙여넣을 수 있지만 반복적으로 수행하면 많은 오류가 발생할 수 있습니다. 괜찮아. 우리는 인간입니다. 다행히도 Drupal 콘솔이 있습니다. CLI(명령줄 인터페이스)에서 실행하는 도구 모음으로 상용구 코드를 자동으로 생성할 수 있습니다. Symfony 콘솔 및 기타 타사 구성 요소를 활용하여 Drupal 8/9 모듈을 구축하는 데 필요한 대부분의 코드를 생성합니다.

드루시란?

Drush(Drupal + Shell)는 Drupal용 원본 CLI 도구입니다. 새로운 Drupal 웹사이트를 쉽게 만들 수 있고 개발 및 관리 작업을 간소화할 수 있습니다. Drush에는 Drupal 설치, 테마, 모듈 등과 상호 작용할 수 있는 구현하기 쉬운 많은 명령이 함께 제공됩니다. Drush로 수행할 수 있는 다른 작업에는 구성 내보내기/가져오기, 캐싱, 기여 모듈 업데이트, 데이터베이스 업데이트 등이 있습니다.

Drush는 Drupal 6/7/8/9와 잘 작동하며 최신 개발 방식의 이점을 제공합니다. 기존 Drupal 모듈을 마이그레이션하는 동안과 새 모듈을 생성하여 생산성을 높이는 동안 개발 시간을 절약하는 데 도움이 됩니다. 이 문서에서 사용자 정의 Drush 명령을 만드는 방법을 알아보세요.

드루팔 콘솔 설치

Drupal 콘솔은 composer, curl, phar 등 다양한 방법으로 설치할 수 있습니다. 다음은 composer를 사용하여 설치하는 예입니다.

작곡가를 통해 전역으로 설치

 composer global require drupal/console

사이트별 설치

1. CLI에서 Drupal 사이트로 이동합니다.

 cd /path/to/drupal_site

2. composer require 명령을 실행하십시오:

 composer require drupal/console:~1.0 --prefer-dist --optimize-autoloader

Drush 설치

Drush는 composer, curl, phar 등 다양한 방법으로 설치할 수 있습니다. 다음은 작곡가를 사용하여 설치하는 예입니다.

작곡가를 통해 전역으로 설치

 composer global require drush/drush

사이트별 설치

1. CLI에서 Drupal 사이트로 이동합니다.

 cd /path/to/drupal_site

2. composer require 명령을 실행하십시오:

 composer require drush/drush

Drupal 콘솔 명령 및 사용법

가장 인기 있고 유용한 Drupal 콘솔 명령과 언제 사용할 수 있는지 확인하십시오.

  • Drupal 디버그 명령

  • 테마 작업 중 중단점을 식별하려면:
 drupal debug:breakpoints {theme_name}

예: drupal 디버그:중단점 bartik

  • 서비스로 작업할 때 서비스의 클래스와 이름을 쉽게 찾으려면:
 drupal debug:config:settings
  • 고통스럽게 깨진 블록이 있는 경우 실패 지점을 식별하려면 다음을 수행하십시오.
 drupal debug:plugin block broken
  • 사용자 정의 모듈 생성

다음 명령을 사용하여 1분 이내에 사용자 지정 모듈을 만듭니다.

 drupal generate:module \ --module="modulename" \ --machine-name="modulename" \ --module-path="/modules/custom" \ --description="My Awesome Module" \ --core="8.x" \ --package="Custom" \ --module-file \ --composer \ --test \ --twigtemplate
  • 사용자 정의 양식 생성

사용자 지정 양식 요구 사항은 프로젝트 전반에 걸쳐 매우 일반적입니다. 이 명령으로 사용자 정의 양식을 쉽게 생성:

 drupal generate:form \ --module="modulename" \ --class="DefaultForm" \ --form- \ --config-file \ --path="/modulename/form/default"
  • 구성 양식 생성

사용자 지정 양식과 마찬가지로 관리자가 구성한 양식도 필요합니다. 이 명령을 사용하면 쉽게 만들 수 있습니다.

 drupal generate:form:config \ --module="modulename" \ --class="DefaultForm" \ --form- \ --config-file \ --path="/modulename/form/default"
  • 컨트롤러 생성

사용자 정의 양식을 사용하려면 컨트롤러가 필요합니다. 다음 명령으로 사용자 정의 컨트롤러를 쉽게 만들 수 있습니다.

 drupal generate:controller \ --module="modulename" \ --class="DefaultController" \ --routes='"title":"ControllerMethod", "name":"modulename.default_controller_hello", "method":"hello", "path":"/modulename/hello/{name}"' \ --test
  • 사용자 지정 엔터티 생성

사용자 지정 엔터티를 만드는 데 시간이 많이 걸릴 필요는 없습니다. 이 명령을 사용하면 빠르고 쉽게 만들 수 있습니다.

 drupal generate:entity:content \ --module="modulename" \ --entity-class="DefaultEntity" \ --entity-name="default_entity" \ --base-path="/admin/structure" \ --label="Default entity" \ --is-translatable \ --revisionable --has-forms
  • 맞춤 서비스 생성

이 명령은 사용자 지정 서비스를 만드는 데 도움이 됩니다.

 drupal generate:service \ --module="modulename" \ --name="modulename.default" \ --class="DefaultService" \ --interface \ --interface-name="InterfaceName" \ --path-service="/modules/custom/modulename/src/"
  • 사용자와 같은 콘텐츠 만들기:만들기

백엔드에서 사용자를 생성하기 위해 브라우저를 열고 admin으로 로그인한 다음 계정을 생성할 필요가 없습니다. 이 명령을 사용하여 순식간에 사용자를 생성하십시오.

 drupal user:create username password \ --roles='authenticated' \ --email="[email protected]" \ --status="1"
  • 블록과 같은 플러그인 생성

Drupal Console은 또한 블록과 같은 많은 플러그인을 생성할 수 있습니다. 다음은 사용자 정의 블록을 만드는 예입니다.

 drupal generate:plugin:block \ --module="modulename" \ --class="DefaultBlock" \ --label="Default block" \ --plugin- \ --theme-region="header" \ --inputs='"name":"inputtext", "type":"text_format", "label":"InputText", "options":"", "description":"Just an input text", "maxlength":"", "size":"", "default_value":"", "weight":"0", "fieldset":""'

더 많은 Drupal 콘솔 명령 및 사용법은 사용 가능한 명령을 확인하십시오.

가장 인기 있는 Drush 명령

드러시 cr Drupal 캐시를 재구축하려면
드러시 씨엠 모든 구성 파일을 가져오려면
드러시 cex 구성 파일을 내보내려면
드루시 울리 일회용 로그인 URL을 사용하여 로그인하려면
drush ko {module_name} 사용자 정의 또는 기여 또는 핵심 모듈을 활성화합니다.
drush pmu {module_name} 모든 모듈 비활성화 및 제거
drush pm:목록 패키지, 모듈 이름, 버전 및 상태가 있는 모든 모듈을 나열합니다.
drush updb 업그레이드 후 데이터베이스를 업데이트하려면
drush watchdog:목록(ws) 모든 감시 메시지를 나열합니다.
drush watchdog:꼬리(wt) 지속적인 꼬리 감시 메시지
drush watchdog:꼬리 --type=php 특정 심각도 유형의 연속 테일 워치독 메시지

몇 가지 더 멋진 Drush 명령

드러시 상태 현재 Drupal 설치에 대한 개요를 제공합니다.
드러시 생성 Drupal Console과 마찬가지로 drush generate 명령은 엔티티, 플러그인 등을 생성하는 데 도움이 됩니다.
drush pm:보안 보안 업데이트를 위해 Drupal 작곡가 패키지를 확인하려면
drush 마이그레이션:상태 현재 상태의 모든 마이그레이션을 나열합니다.
drush 사용자:비밀번호 {사용자 이름} {비밀번호} 사용자 비밀번호 설정
drush 사용자:차단 사용자 차단을 돕습니다.
drush 사용자:역할:추가 사용자 역할 추가 지원
drush SQL 덤프 mysqldump 또는 이와 동등한 것을 사용하여 Drupal 데이터베이스를 SQL로 내보냅니다.