Ui_component formu oluşturdum .
Müşteri ayrıntılarını göstermem gereken yer, Müşteri Düzenleme ile aynı .
Ancak, verilerini customer_entity
tablodan gösterebilirim .
DataProvider.php
public function getData()
{
if (isset($this->loadedData)) {
return $this->loadedData;
}
// {Vendor}\{Module}\Model\GridFactory
// Returns Customer Resource Model
$items = $this->gridFactory->create()->getCollection();
$items->getSelect()->join('customer_entity_text as second', 'main_table.entity_id = second.entity_id');
//print_r($items->getData()); exit;
foreach($items as $contact){
$this->loadedData[$contact->getEntityId()]['contact'] = $contact->getData();
}
return $this->loadedData;
}
(Müşteri Özelliği)
customer_entity_text
görüntülemek için Fabrikamla masaya katıldımstatus
.Şimdi İkinci özniteliğim
file
tür. İçindecustomer_entity_varchar
, öncelikle başka bir katılma eklemeyi düşündüm ama bence iyi bir yol değil.
Bunun için bir çözüm var mı? Her ikisini Customer Attribute
de formumda göstermem gerekiyor .
ui_component
<field name="value">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="label" xsi:type="string">Status</item>
<item name="visible" xsi:type="boolean">true</item>
<item name="dataType" xsi:type="string">text</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">contact</item>
</item>
</argument>
</field>
1). Yukarıdaki bileşen Durum için iyi çalışıyor ancak Görüntü türü olan Profil Görüntüsü için çalışmıyor .
<field name="value">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="label" xsi:type="string">Profile Image</item>
<item name="visible" xsi:type="boolean">true</item>
<item name="formElement" xsi:type="string">fileUploader</item>
<item name="uploaderConfig" xsi:type="array">
<item name="url" xsi:type="url" path="path_controller"/>
</item>
</item>
</argument>
</field>
Aynı adı taşıyan bir alanı kaldırsam bile form element
işe yaramıyor gibi görünüyor.
Bir göz atın field
olduğunu isim value
için Status .
Görüntü alanı için aynı şeyi kullanırsam görüntü bileşeni kaybolur.
Not : Magento'nun neden adı kullanmasına izin vermediği hakkında hiçbir fikrim yok value
.
Çünkü ben
value
dizi anahtarı olarak alıyorum bu yüzden koleksiyona katıldım .
** Soru: Koleksiyona katılmadan bu formdaki müşteri özelliklerini nasıl alabilirim?
Ayrıca en hoş karşılanan başka bir çözüm varsa. **