В Magento 2 одним из файлов конфигурации XML, который может иметь модуль, является resources.xml
файл. Например, модуль продаж имеет один
#File: vendor/magento/module-sales/etc/resources.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
/**
* Copyright © 2015 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/resources.xsd">
<resource name="sales_setup" extends="core_setup" />
<resource name="sales" extends="core" />
</config>
Кто-нибудь знает, для чего эти файлы используются в Magento 2? Похоже, это старый <resources/>
узел верхнего уровня Magento 1 . Однако, так как Magento больше не использует настройки ресурсов Model / Миграции (вместо Magento 2 использует классы Setup/InstallSchema.php
, Setup/InstallData.php
, Setup/UpgradeSchema.php
, Setup/UpgradeData.php
для установки / переноса подобных скриптов), его не 100% ясно , что sales_setup
ресурс для.
Для неустановочного ресурса это просто еще один способ добавить класс соединения с базой данных с другой информацией о полномочиях / строке соединения? Или что-то другое?
vendor\magento\framework\App\etc\resources.xsd"(4,41)
. может быть, можно дать любую идеюОтветы:
Я думаю, что ресурсы связаны с фактическим подключением к базе данных. М1 в прошлом было примерно так:
так что я бы сказал, что файл ресурсов является преемником того, что соединение было.
Не уверен, что узел _setup обеспечивает большую ценность над другой строкой, так как у нас есть этот код в
Библиотека / внутренний / Magento / Framework / App / ResourceConnection / config.php
а также в файле setup / src / Magento / Setup / Module / Setup / ResourceConfig.php
Я быстро просмотрел некоторые корпоративные модули, чтобы выяснить, проливает ли это больше света на использование
resources.xml
файла (так как несколько дБ, по-видимому, является функцией M2 Enterprise), но единственное использование, с которым я сталкивался до сих пор, также использует только расширения отcore
.Я догадываюсь, что нужно будет создать дополнительные соединения БД, в
app/etc/env.php
которых затем можно будет использовать эти значения для переопределения значений, поставляемых вresource.xml
файлах по умолчанию (т. Е. Только 1 соединение по умолчанию).источник