Magento Extensions Rating 2024
EXTENSIONS BY CATEGORY
B2B (Business-To-Business)
Blog
Customer
ERP (Enterprise Resource Planning)
Mega Menu
One Step Checkout
Order
POS (Point Of Sale)
Search
Shopping Cart
Sitemap
SEO
Social
Stock & Inventory Management
EXTENSIONS BY DEVELOPER
aheadWorks
Amasty
Boost My Shop
BSS Commerce
Magestore
MageWorx
Mirasvit
Templates Master
Wyomind
XTENTO
Magento 2 Documentation
Magento 2 Documentation
2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
vendor
magento
framework
Model
ResourceModel
Db
UpdateEntityRow.php
Go to the documentation of this file.
1
<?php
7
namespace
Magento\Framework\Model\ResourceModel\Db
;
8
9
use
Magento\Framework\EntityManager\EntityMetadata
;
10
use
Magento\Framework\EntityManager\MetadataPool
;
11
15
class
UpdateEntityRow
16
{
20
protected
$metadataPool
;
21
25
public
function
__construct
(
26
MetadataPool
$metadataPool
27
) {
28
$this->metadataPool =
$metadataPool
;
29
}
30
36
protected
function
prepareData
(
EntityMetadata
$metadata,
$data
)
37
{
38
$output
= [];
39
foreach
($metadata->
getEntityConnection
()->describeTable($metadata->
getEntityTable
()) as $column) {
40
if
($column[
'DEFAULT'
] ==
'CURRENT_TIMESTAMP'
|| $column[
'IDENTITY'
]) {
41
continue
;
42
}
43
if
(array_key_exists(strtolower($column[
'COLUMN_NAME'
]),
$data
)) {
44
$output
[strtolower($column[
'COLUMN_NAME'
])] =
$data
[strtolower($column[
'COLUMN_NAME'
])];
45
}
46
}
47
return
$output
;
48
}
49
56
public
function
execute
(
$entityType
,
$data
)
57
{
58
$metadata = $this->metadataPool->getMetadata(
$entityType
);
59
$connection
= $metadata->getEntityConnection();
60
return
$connection
->update(
61
$metadata->getEntityTable(),
62
$this->
prepareData
($metadata,
$data
),
63
[$metadata->getLinkField() .
' = ?'
=>
$data
[$metadata->getLinkField()]]
64
);
65
}
66
}
Magento\Framework\EntityManager\EntityMetadata
Definition:
EntityMetadata.php:15
Magento\Framework\EntityManager\EntityMetadata\getEntityConnection
getEntityConnection()
Definition:
EntityMetadata.php:103
Magento\Framework\Model\ResourceModel\Db
Definition:
AbstractDb.php:6
Magento\Framework\Model\ResourceModel\Db\UpdateEntityRow\prepareData
prepareData(EntityMetadata $metadata, $data)
Definition:
UpdateEntityRow.php:36
$entityType
$entityType
Definition:
attribute_set_with_image_attribute.php:13
Magento\Framework\EntityManager\MetadataPool
Definition:
MetadataPool.php:18
$data
$data
Definition:
attribute_set_with_image_attribute.php:16
Magento\Framework\Model\ResourceModel\Db\UpdateEntityRow\execute
execute($entityType, $data)
Definition:
UpdateEntityRow.php:56
Magento\Framework\Model\ResourceModel\Db\UpdateEntityRow
Definition:
UpdateEntityRow.php:15
$output
$output
Definition:
classmap_generator.php:100
Magento\Framework\Model\ResourceModel\Db\UpdateEntityRow\$metadataPool
$metadataPool
Definition:
UpdateEntityRow.php:20
Magento\Framework\Model\ResourceModel\Db\UpdateEntityRow\__construct
__construct(MetadataPool $metadataPool)
Definition:
UpdateEntityRow.php:25
$connection
$connection
Definition:
bulk.php:13
Magento\Framework\EntityManager\EntityMetadata\getEntityTable
getEntityTable()
Definition:
EntityMetadata.php:111