TL; DR: Magento 2'de getTable
, bir kaynak toplama modelinden 2 farklı parametre için aynı tablo adını döndürecek yöntemi yapmanın bir yolu var mı ?
Detaylı Açıklama
Magento 1'den bir örnekle başlayacağım.
Diyelim ki bir masam var module_entiti1_entity2
.
Bu tabloyu config.xml
böyle benim ilan etmem gerekiyordu
<module_resource>
<class>....</class>
<entities>
<entity1_entity2>
<table>module_entiti1_entity2</table>
</entity1_entity2>
</entities>
</module_resource>
Sonra tablo adını örneğin böyle bir kaynak toplama modelinden alabilirsiniz:
$collection->getTable('module/entity1_entity2');
Ama istersem aynı tablo için birden fazla takma ad kullanabilirim.
Benim config.xml
bölümüm olursa
<module_resource>
<class>....</class>
<entities>
<entity1_entity2>
<table>module_entiti1_entity2</table>
</entity1_entity2>
<entity2_entity1>
<table>module_entiti1_entity2</table>
</entity2_entity1>
</entities>
</module_resource>
Masamı 2 şekilde alabilirim:
$collection->getTable('module/entity1_entity2');
$collection->getTable('module/entity2_entity1');
Magento 2'de yukarıdaki gibi bir tablo bildirimi yoktur.
Tablo adımı böyle alabilirim $collection->getTable('module_entity1_entity2')
.
Magento'ya parametrenin parametreyle module_entity2_entity1
aynı tablo adını döndürmesini söylemenin bir yolu var mı module_entity1_entity2
?
setMappedTableName
kaynak modeli yapıcımda kullanırsam, çalışmalıdır, değil mi? Bu, sınıftan başka bir yöntemden önce çağrılır.