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
CreateEntityRow.php
Go to the documentation of this file.
1
<?php
6
namespace
Magento\Framework\Model\ResourceModel\Db
;
7
8
use
Magento\Framework\EntityManager\EntityMetadata
;
9
use
Magento\Framework\EntityManager\MetadataPool
;
10
14
class
CreateEntityRow
15
{
19
protected
$metadataPool
;
20
24
public
function
__construct
(
25
MetadataPool
$metadataPool
26
) {
27
$this->metadataPool =
$metadataPool
;
28
}
29
35
protected
function
prepareData
(
EntityMetadata
$metadata,
$data
)
36
{
37
$output
= [];
38
foreach
($metadata->
getEntityConnection
()->describeTable($metadata->
getEntityTable
()) as $column) {
39
if
($column[
'DEFAULT'
] ==
'CURRENT_TIMESTAMP'
/*|| $column['IDENTITY']*/
) {
40
continue
;
41
}
42
if
(isset(
$data
[strtolower($column[
'COLUMN_NAME'
])])) {
43
$output
[strtolower($column[
'COLUMN_NAME'
])] =
$data
[strtolower($column[
'COLUMN_NAME'
])];
44
}
elseif
($column[
'DEFAULT'
] ===
null
) {
45
$output
[strtolower($column[
'COLUMN_NAME'
])] =
null
;
46
}
47
}
48
if
(empty(
$data
[$metadata->
getIdentifierField
()])) {
49
$output
[$metadata->
getIdentifierField
()] = $metadata->
generateIdentifier
();
50
}
51
return
$output
;
52
}
53
59
public
function
execute
(
$entityType
,
$data
)
60
{
61
$metadata = $this->metadataPool->getMetadata(
$entityType
);
62
63
$linkField = $metadata->getLinkField();
64
$entityTable
= $metadata->getEntityTable();
65
$connection
= $metadata->getEntityConnection();
66
67
$connection
->insert(
$entityTable
, $this->
prepareData
($metadata,
$data
));
68
69
$data
[$linkField] =
$connection
->lastInsertId(
$entityTable
);
70
71
return
$data
;
72
}
73
}
Magento\Framework\EntityManager\EntityMetadata
Definition:
EntityMetadata.php:15
elseif
elseif(isset( $params[ 'redirect_parent']))
Definition:
iframe.phtml:17
Magento\Framework\EntityManager\EntityMetadata\getEntityConnection
getEntityConnection()
Definition:
EntityMetadata.php:103
Magento\Framework\EntityManager\EntityMetadata\generateIdentifier
generateIdentifier()
Definition:
EntityMetadata.php:127
Magento\Framework\Model\ResourceModel\Db
Definition:
AbstractDb.php:6
Magento\Framework\Model\ResourceModel\Db\CreateEntityRow\prepareData
prepareData(EntityMetadata $metadata, $data)
Definition:
CreateEntityRow.php:35
$entityType
$entityType
Definition:
attribute_set_with_image_attribute.php:13
Magento\Framework\Model\ResourceModel\Db\CreateEntityRow\__construct
__construct(MetadataPool $metadataPool)
Definition:
CreateEntityRow.php:24
Magento\Framework\EntityManager\MetadataPool
Definition:
MetadataPool.php:18
$data
$data
Definition:
attribute_set_with_image_attribute.php:16
Magento\Framework\Model\ResourceModel\Db\CreateEntityRow\execute
execute($entityType, $data)
Definition:
CreateEntityRow.php:59
$output
$output
Definition:
classmap_generator.php:100
Magento\Framework\Model\ResourceModel\Db\CreateEntityRow\$metadataPool
$metadataPool
Definition:
CreateEntityRow.php:19
Magento\Framework\Model\ResourceModel\Db\CreateEntityRow
Definition:
CreateEntityRow.php:14
$connection
$connection
Definition:
bulk.php:13
Magento\Framework\EntityManager\EntityMetadata\getIdentifierField
getIdentifierField()
Definition:
EntityMetadata.php:84
$entityTable
$entityTable
Definition:
tablerates.php:11
Magento\Framework\EntityManager\EntityMetadata\getEntityTable
getEntityTable()
Definition:
EntityMetadata.php:111