我实现了必须为所有商店存储不同数据的模块,所以我需要获取当前商店ID并使用新记录将id设置为db。我尝试以这种方式获取商店ID
$storeId = $this->_storeManager->getStore()->getId();
但是当我将范围更改为另一个商店(其ID为#34; 2")时,$ storeId仍然具有价值" 1" (默认商店)。我看到我的网址中的最后一个参数已经改变了
store/2/
但在代码中返回了默认的商店ID。知道导致这个问题的原因吗?
答案 0 :(得分:0)
问题在于您假设在更改配置范围时也会更改后端范围,但事实并非如此。请参阅github中的以下问题以获得解决问题的方法: https://github.com/magento/magento2/issues/9741
tl; dr:从请求参数获取商店ID:$this->_request->getParam('store', 0)