2017-04-15 2 views
0

Ich möchte ein Kunden-Bild-Attribut erstellen, so können Kunden und Admin Profilbild wie Avatar hochladen, aktualisieren und löschen. Ich weiß, wie ist das möglich in Magento 1, aber nicht in Magento 2 . Wenn jemand eine Idee haben, bitte teilen. Danke im Voraus.So laden Sie Kundenprofil Bild in Magento 2

+0

i, Hdid Sie erhalten eine Lösung? – Jsparo30

Antwort

0

erstellen Sie unter Moduldateien. Es funktionierte auf magento 2.1.4
erstellen: app \ code \ Sashas \ CustomerAttribute \ etc \ module.xml

<?xml version="1.0" encoding="UTF-8"?> 

<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd"> 
    <module name="Sashas_CustomerAttribute" setup_version="1.0.0"> 
     <sequence>   
      <module name="Magento_Customer"/> 
     </sequence> 
    </module> 
</config> 

erstellen: app \ code \ Sashas \ CustomerAttribute \ Setup \ InstallData.php

<?php 
/** 
* @author  Sashas 
* @category Sashas 
* @package  Sashas_CustomerAttribute 
* @copyright Copyright (c) 2015 Sashas IT Support Inc. (http://www.extensions.sashas.org) 
*/ 

namespace Sashas\CustomerAttribute\Setup; 


use Magento\Customer\Setup\CustomerSetupFactory; 
use Magento\Customer\Model\Customer; 
use Magento\Eav\Model\Entity\Attribute\Set as AttributeSet; 
use Magento\Eav\Model\Entity\Attribute\SetFactory as AttributeSetFactory; 
use Magento\Framework\Setup\InstallDataInterface; 
use Magento\Framework\Setup\ModuleContextInterface; 
use Magento\Framework\Setup\ModuleDataSetupInterface; 



/** 
* @codeCoverageIgnore 
*/ 
class InstallData implements InstallDataInterface 
{ 

    /** 
    * @var CustomerSetupFactory 
    */ 
    protected $customerSetupFactory; 

    /** 
    * @var AttributeSetFactory 
    */ 
    private $attributeSetFactory; 

    /** 
    * @param CustomerSetupFactory $customerSetupFactory 
    * @param AttributeSetFactory $attributeSetFactory 
    */ 
    public function __construct(
     CustomerSetupFactory $customerSetupFactory, 
     AttributeSetFactory $attributeSetFactory 
    ) { 
     $this->customerSetupFactory = $customerSetupFactory; 
     $this->attributeSetFactory = $attributeSetFactory; 
    } 


    /** 
    * {@inheritdoc} 
    */ 
    public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context) 
    { 

     /** @var CustomerSetup $customerSetup */ 
     $customerSetup = $this->customerSetupFactory->create(['setup' => $setup]); 

     $customerEntity = $customerSetup->getEavConfig()->getEntityType('customer'); 
     $attributeSetId = $customerEntity->getDefaultAttributeSetId(); 

     /** @var $attributeSet AttributeSet */ 
     $attributeSet = $this->attributeSetFactory->create(); 
     $attributeGroupId = $attributeSet->getDefaultGroupId($attributeSetId); 

     $customerSetup->addAttribute(Customer::ENTITY, 'magento_username', [ 
      'type' => 'varchar', 
      'label' => 'Magento Username', 
      'input' => 'image', 
      'required' => false, 
      'visible' => true, 
      'user_defined' => true, 
      'sort_order' => 1000, 
      'position' => 1000, 
      'system' => 0, 
     ]); 

     $attribute = $customerSetup->getEavConfig()->getAttribute(Customer::ENTITY, 'magento_username') 
     ->addData([ 
      'attribute_set_id' => $attributeSetId, 
      'attribute_group_id' => $attributeGroupId, 
      'used_in_forms' => ['adminhtml_customer'], 
     ]); 

     $attribute->save(); 


    } 
} 

erstellen: app \ code \ Sashas \ CustomerAttribute \ registration.php

<?php 
     \Magento\Framework\Component\ComponentRegistrar::register(
      \Magento\Framework\Component\ComponentRegistrar::MODULE, 
      'Sashas_customerAttribute', 
      __DIR__ 
     ); 

?> 
+0

Könnten Sie bitte vollständige Antwort geben? – Jsparo30

Verwandte Themen