Dlaczego brakuje folderu `code` w folderze` app` w stabilnej wersji Magento 2?


17

Pobrałem stabilną wersję Magento 2 ze strony https://www.magentocommerce.com/download z przykładowymi danymi i zainstalowałem.

Działa dobrze w obu obszarach, tj. Frontend i backend.

Ale nie mogłem znaleźć app/codefolderu.

Podobne foldery modułów znajdują się pod vendor\magento.

  • Czy struktura folderów zmieniła się ponownie w Magento 2?
  • Gdzie możemy umieścić nasz niestandardowy folder modułu?

Pamiętaj o tym, mimo że Magento 2 zostało wypuszczone na wolność jako „stabilne”, jest to w zasadzie kod alfa i może ulec zmianie. Kilku wczesnych autorów głównego modułu adopcyjnego skomentowało potrzebę zmiany koni w środkowej fazie co około 3 tygodnie. Masz jeszcze 2 zmiany subwersji, zanim będziesz mógł na nich polegać.
Fiasco Labs,

1
Po otrzymaniu informacji zwrotnych oraz w oparciu o pracę wykonaną przez nas i społeczność, przenieśliśmy teraz główny kod Magento do dostawcy (gdzie - zdaniem wielu - należy).
zyskuje

Odpowiedzi:


18

app/codebrakuje, ponieważ wszystkie moduły Magento są umieszczone w vendorkatalogu dla wygody programistów zewnętrznych, więc nie muszą mieszać własnego kodu z rdzeniem. Teraz łatwo jest tworzyć niestandardowe moduły bez przypisywania całego rdzenia Magento do repozytorium GIT (w przeciwieństwie do Magento 1).


7

Nie powinieneś umieszczać własnego folderu modułów w dowolnym miejscu: Composer zrób to za siebie i domyślnie umieszcza pakiety (i moduły Magento wśród nich) w vendorfolderze.


# Mage2.PRO, więc umieściłem niestandardowy moduł w folderze aplikacji / kodu lub w folderze dostawcy?
Shaheer Ali,

Powinieneś umieścić swój moduł w repozytorium kompozytora. Kompozytor pobierze i zainstaluje moduł w odpowiednim folderze. Oto przykład mojego niestandardowego repozytorium kompozytora: mage2.pro/packages.json
Mage2.PRO,

jeśli opracowałem moduł lokalnie dla m2, to jak teraz mogę go zainstalować na m2 stabilnej?
Shaheer Ali,

Umieść swój moduł w repozytorium kompozytora: getcomposer.org/doc/05-repositories.md
Mage2.PRO,

4
@ Mage2.PRO: jaki powinien być dokładny proces krok po kroku, aby uruchomić nasz moduł opracowany w Magento2 Beta?
Chiragit007,

1

Właściwie jedyne, czego potrzebujesz w konfiguracji Magento 2, to composer.jsonplik, który wymaga pakietu magento/product-community-editionz repozytorium Composer https://repo.magento.com/ .

Teraz, po uruchomieniu composer install, pobierze wiele pakietów Magento i pakietów stron trzecich (Composer, Symfony, Zend itp.) I umieści je w vendor/folderze. Dzięki Instalatorowi Magento Composer skopiuje również wiele plików Magento 2 do katalogu głównego. Ale tak naprawdę cały twój kod pochodzi vendor/.

Teraz app/codefolderu nie ma tam domyślnie. Można ją stworzyć samemu i dodaj swoje lokalne moduły tam w tej strukturze: app/code/<VendorName>/<ModuleName>.

Możesz także opracować moduły w oddzielnym repozytorium VCS (tj. GIT) i dodać je do swojego, composer.jsonco spowoduje, że będą one również instalowane w vendor/katalogu.


0
  • folder multimediów i błędów jest przenoszony do folderu pub
  • folder skin i js są przenoszone do pub/staticfolderu.

Teraz łatwo jest utrzymać statyczną zawartość za pośrednictwem CDN.

  • js, css, obrazy są ponownie dzielone na pub/static/adminhtmli odpowiednio pub/static/frontenddla backendu i frontendu.

  • Folder dev zawiera różne narzędzia dla programistów, takie jak narzędzia do migracji i testy. powłoka została przeniesiona do folderu deweloperskiego

  • downloadera, dołączeń i pkginfofolderów już nie ma w Magento 2.

  • katalog instalacyjny jest przeznaczony do procesu instalacji

  • Pliki get.php, cron.php i index.phppliki są przenoszone do folderu pub.

  • Ustawienia połączenia z bazą danych, nazwa zaplecza, ustawienia zapisu sesji i ustawienia pamięci podręcznej są zadeklarowane w app/etc/env.php

  • Tematy są pogrupowane według „dostawcy”, znanego jako „pakiet” w Magento 1.x. Struktura motywu w Magento 2 jest podobna app/design/frontend/vendor_name/theme_name.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.