Почему папка `code` отсутствует в папке` app` в стабильной версии magento 2?


17

Я скачал стабильную версию Magento 2 с https://www.magentocommerce.com/download с примерами данных и установил.

Он отлично работает в обеих областях, т.е. фронтэнд и бэкэнд.

Но я не смог найти app/codeпапку.

Аналогичные папки модуля находятся под vendor\magento.

  • Изменилась ли структура папок в Magento 2 снова?
  • Куда мы можем поместить нашу папку с пользовательским модулем?

Просто запомните это, хотя Magento 2 был выпущен в дикой природе как «стабильный», это в основном альфа-код и может измениться еще раз. Несколько ранних авторов основного модуля комментировали необходимость переключения лошадей в среднем течении каждые 3 недели. У вас есть еще 2 изменения Subversion, прежде чем вы сможете зависеть от этого.
Fiasco Labs

1
Учитывая некоторую обратную связь и основываясь на некоторой работе, сделанной нами и сообществом, мы теперь переместили основной код Magento в поставщика (где, как утверждают многие, он принадлежит).
отметки

Ответы:


18

app/codeотсутствует, поскольку все модули Magento помещены в vendorкаталог для удобства сторонних разработчиков, поэтому им не нужно смешивать собственный код с ядром. Теперь легко разрабатывать пользовательские модули без добавления всего ядра Magento в свой GIT-репозиторий (в отличие от Magento 1).


7

Вам не следует никуда помещать папку с пользовательским модулем: Composer сделает это за вас, и по умолчанию он помещает пакеты (и модули Magento среди них) в vendorпапку.


# Mage2.PRO, чтобы я поместил свой пользовательский модуль в папку app / code или в папку vendor?
Шахир Али

Вы должны поместить свой модуль в хранилище композитора. Composer загрузит и установит ваш модуль в соответствующую папку. Вот пример моего собственного репозитория композитора: mage2.pro/packages.json
Mage2.PRO

если я разработал модуль локально для m2, то теперь, как я могу установить его на стабильной m2?
Шахир Али

Поместите свой модуль в хранилище композиторов: getcomposer.org/doc/05-repositories.md
Mage2.PRO

4
@ Mage2.PRO: каким должен быть точный пошаговый процесс для запуска нашего модуля, разработанного в Magento2 Beta?
Chiragit007

1

Фактически, единственное, что вам нужно в настройке Magento 2, это composer.jsonфайл, который требует пакет magento/product-community-editionиз хранилища Composer. https://repo.magento.com/ .

Теперь при запуске composer installон загрузит множество пакетов Magento и сторонних пакетов (Composer, Symfony, Zend и т. Д.) И поместит их в vendor/папку. Благодаря установщику Magento Composer он также скопирует много файлов Magento 2 в корневой каталог. Но на самом деле весь ваш код происходит отvendor/ .

Теперь app/codeпапка не существует по умолчанию. Вы можете создать его самостоятельно и добавить свои локальные модули там в этой структуре: app/code/<VendorName>/<ModuleName>.

Вы также можете создать свои модули в отдельном хранилище VCS (то есть GIT) и добавить их в свой, composer.jsonчто сделает их также установленными в vendor/каталоге.


0
  • папка media и error перемещена в папку pub
  • папка skin и js перемещаются в pub/staticпапку.

Теперь легко поддерживать статический контент через CDN.

  • js, css, изображения снова делятся на pub/static/adminhtmlи pub/static/frontendдля внутренней и внешней областей соответственно.

  • Папка dev содержит различные инструменты для разработчиков, такие как инструменты миграции и тесты. оболочка перемещена в папку dev

  • загрузчик, включает и pkginfoпапка больше не с magento 2.

  • каталог установки для процесса установки

  • get.php, cron.php и index.phpфайлы перемещаются в папку pub.

  • Настройки подключения к базе данных, имя бэкэнда, настройки сохранения сеанса и настройки кэша объявлены в app/etc/env.php

  • Темы сгруппированы по «vendor», который мы знаем как «package» в magento 1.x. Структура темы в Magento 2 похожа app/design/frontend/vendor_name/theme_name.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.