it-swarm-eu.dev

Existuje způsob, jak přimět Crush ke stažení všech požadovaných závislostí pro konkrétní modul?

Například pokud provedete následující příkazy:

drush dl views
drush en views views_ui views_export

Při pokusu o povolení modulů zobrazení se zobrazí následující chyba:

Zobrazení modulů nelze povolit, protože záleží na následujících modulech, které nebyly nalezeny: ctools

Existuje způsob, jak se dostat ke stažení požadovaných závislostí modulů?

20
Camsoft

Drush 5 a vyšší:

Novější verze Drush (verze 5 a vyšší) se vás zeptají, zda chcete stáhnout požadované závislosti, když povolíte (drush en) modul. Rovněž se zeptá, zda chcete stáhnout samotný modul, pokud jste jej ještě nestáhli. V kombinaci s možností „-y“ (např. drush en views -y), vše bude staženo a povoleno automaticky bez dalších dotazů.

Upozorňujeme, že automatické stahování závislostí může selhat, pokud název požadovaného modulu není stejný jako název jeho projektu na adrese drupal.org. Pro více informací viz moje původní odpověď na Drush 4 níže.

Původní odpověď (Drush 4):

Ne, neexistuje žádný způsob, jak to udělat. Problém je v tom, že existuje rozdíl mezi modulem a projektem. Často (ale ne vždy) je název projektu totožný s modulem (nebo jedním z modulů) obsaženým v projektu. Jeden projekt (např. Pohledy) může obsahovat více modulů (pohledy, views_ui, views_export). Zatímco drush dl stáhne projekt , drush en umožňuje modul .

Když modul deklaruje závislosti, deklaruje závislosti na modulech, nikoli na projektech. Při provádění drush en, Drush může zkontrolovat, zda je požadovaný modul k dispozici. Pokud však není k dispozici, Drush nemá možnost vědět, který projekt stáhnout. Aby mohl Drush automaticky stahovat požadované projekty, musí být provedena práce v podkladové infrastruktuře projektů/modulů, takže Drush může načíst mapování projektů a modulů. Viz také Chytřejší řešení chybějících závislostí .

18
marcvangend

Ve skutečnosti má drush5 (stále se vyvíjí) mapu známých společných závislostí (content.module, ctools, ...). Ve vašem příkladu tedy skutečně stahuje ctools.

9
moshe weitzman

to již není problém, protože nejnovější verze drush to "automaticky":

The following projects have unmet dependencies:[ok]
answers requires strongarm, references, nodereference_url, nodereference_count, eva
Would you like to download them? (y/n):
6
Alejandro Moreno

Některé moduly nebo projekty obsahují skript drush make, který může stahovat závislosti a instalovat externí knihovny.

Většinou tomu tak ale není a existují problémy s vnořením skriptů pro vytváření drushů. U některých modulů, které je složitější nastavit, stojí za to hledat.

2
Jeremy French

Vyzkoušejte modul Rychlá aktualizace . Stáhne pro vás všechny chybějící projekty závislosti.

Zde je citace (ze stránky projektu modulu):

... poskytuje rychlý způsob dávkové instalace více nových projektů nebo všech chybějících závislých projektů.

Jádro Drupal poskytuje způsob, jak instalovat modul nebo téma jeden po druhém, ale můžete nainstalovat více projektů prostřednictvím modulu Rychlá aktualizace. Existuje administrátorské uživatelské rozhraní pro snadnější vyhledávání nejvíce nainstalovaných projektů.

Další modul Rychlá aktualizace pro vás najde všechny chybějící projekty závislosti, poté je můžete všechny vybrat z uživatelského rozhraní správce a nainstalovat je v dávkovém procesu.

Modul rychlé aktualizace závisí na modulu aktualizace a používá stejný pracovní postup jako modul aktualizace. Můžete tedy spouštět aktualizace prostřednictvím stránky aktualizace správce na stránce/admin/reports/updates/update.

2
Jay Chen