उत्पाद फैक्टरी ऑब्जेक्ट का उपयोग करके, मैं एक उत्पाद बनाने में सक्षम हूं, उत्पाद संग्रह को हड़प सकता हूं और उस संग्रह का पहला आइटम प्राप्त कर सकता हूं
/* var $productFactory \Magento\Catalog\Model\ProductFactory */
$product = $this->productFactory->create()->getCollection()->getFirstItem();
हालाँकि, अगर मैं संग्रह के फ़िल्टर में store_id जोड़ने का प्रयास करता हूँ
$product = $this->productFactory
->create()
->getCollection()
->addFieldToFilter('store_id', 1)
->getFirstItem();
मुझे निम्नलिखित त्रुटि मिलती है
Invalid attribute name: store_id
#0 /Users/alanstorm/Sites/magento-2-dev-docs.dev/magento2/app/code/Magento/Eav/Model/Entity/Collection/AbstractCollection.php(1434): Magento\Eav\Model\Entity\Collection\AbstractCollection->_addAttributeJoin('store_id', 'inner')
#1 /Users/alanstorm/Sites/magento-2-dev-docs.dev/magento2/app/code/Magento/Eav/Model/Entity/Collection/AbstractCollection.php(359): Magento\Eav\Model\Entity\Collection\AbstractCollection->_getAttributeConditionSql('store_id', 1, 'inner')
#2 /Users/alanstorm/Sites/magento-2-dev-docs.dev/magento2/app/code/Magento/Catalog/Model/Resource/Product/Collection.php(1489): Magento\Eav\Model\Entity\Collection\AbstractCollection->addAttributeToFilter('store_id', 1, 'inner')
#3 /Users/alanstorm/Sites/magento-2-dev-docs.dev/magento2/app/code/Magento/Eav/Model/Entity/Collection/AbstractCollection.php(382): Magento\Catalog\Model\Resource\Product\Collection->addAttributeToFilter('store_id', 1)
...
#63 {main}
अगर मैं store_id द्वारा फ़िल्टर करने के लिए उत्पाद रिपॉजिटरी का उपयोग करने का प्रयास करता हूं (रिपॉजिटरी हुड के तहत संग्रह का उपयोग करता है) तो यही बात होती है।
क्या यह एक बग है? या Magento 2 में स्टोर, वेबसाइट और उत्पादों के बीच संबंध ऐसे बदल गए हैं कि यह अब वैध क्वेरी नहीं है? दोनों? न तो? कुछ और?