Estou tentando migrar meu Magento 1.9.3.4 para Magento 2.2.2 com a ferramenta de migração de dados.
Eu fiz isso e a loja está funcionando no host local; Eu tenho os clientes, vendas, páginas estáticas e produtos.
Eu recebo esse erro fatal quando tentei editar um produto:
Erro fatal: TypeError não detectado: argumento 2 passado para Magento \ Framework \ View \ Element \ UiComponentFactory :: argumentosResolver () deve ser do tipo array, nulo, chamado em D: \ xampp \ htdocs \ magento2 \ vendor \ magento \ framework \ View \ Element \ UiComponentFactory.php na linha 212 e definido em D: \ xampp \ htdocs \ magento2 \ fornecedor \ magento \ framework \ View \ Element \ UiComponentFactory.php: 164 Rastreio de pilha:
0 D: \ xampp \ htdocs \ magento2 \ vendor \ magento \ framework \ View \ Element \ UiComponentFactory.php (212): Magento \ Framework \ View \ Element \ UiComponentFactory-> argumentResolver ('created_by', NULL)
1 D: \ xampp \ htdocs \ magento2 \ vendedor \ magento \ módulo-ui \ Component \ Form \ Field.php (84): Magento \ Framework \ View \ Element \ UiComponentFactory-> create ('created_by', '', Array )
2 D: \ xampp \ htdocs \ magento2 \ vendor \ magento \ framework \ View \ Layout \ Generator \ UiComponent.php (159): Magento \ Ui \ Component \ Form \ Field-> prepare ()
3 D: \ xampp \ htdocs \ magento2 \ vendor \ magento \ framework \ View \ Layout \ Generator \ UiComponent.php (156): Magento \ Framework \ View \ Layout \ Generator \ UiComponent-> prepare em D: \ xampp \ htdocs \ magento2 \ vendor \ magento \ framework \ View \ Element \ UiComponentFactory.php na linha 164
Alguma sugestão?
fonte
Respostas:
Eu tive exatamente o mesmo erro ao criar um módulo personalizado. Não tenho certeza se isso resolverá o seu caso, mas talvez ajude a esclarecer o que está acontecendo.
No meu xml de layout personalizado, eu tinha um uiComponent que ainda não estava definido. Arquivo:
Definir este componente de interface do usuário (ou remover o nó uiComponent no meu xml de layout) resolveu o problema para mim.
fonte
Eu recebi esse erro após a migração e um dos atributos tinha um costume
frontend_input
. Vejo na sua pilha rastrear que o problema está com ocreated_by
campo. Talvez você deva definir ofrontend_input
campo paratext
ou algo semelhante.fonte
No nosso caso, esse problema também estava relacionado a uma migração de 1.9.4 a 2.2.7 e foi a um módulo de pré-encomenda que adicionou atributos ao site Magento 1.
Tivemos que atualizar a tabela
eav_attribute
e alterarfrontend_input
de0
paratext
.Veja nossa consulta ao banco de dados abaixo:
fonte
Certifique-se de que o
<uiComponent name="registration_form" />
nome do uiComponent seja igual ao nome do componente xml emMyCompany/MyModule/view/frontend/ui_component/registration_form.xml
fonte
Migrei os dados de
magento 1.9.3.7
paramagento 2.2.5
usando a ferramenta de migração de dados. Quando clico no botão Adicionar produto no painel do administrador, ele me mostra o mesmo erro. A maneira que eu resolvi foi ir para Admin-> Loja-> Conjunto de Atributos . E editou o conjunto de atributosDefault
eMigration_Default
. Inicialmente, oMigration_Default
Atributo tinha os conjuntos de atributos, mas oDefault
estava vazio. Eu adicionei os atributos aoDefault Attribute Set
e executei oreindex
comandoVerifique também se o
Schedule Design Update
grupo contém os seguintes atributos:custom_design_from
custom_design_to
design personalizado
custom_layout
E funcionou para mim ...;)
fonte
Você pode verificar se o valor frontend_input do atributo é válido. Se você tiver um campo personalizado, verifique se o componente de front-end está definido corretamente.
fonte
No meu caso, encontrei esse atributo e alterei o texto para a área de texto. Isso resolve o problema.
Para fazer isso, você precisa editar o atributo, mas no modo de inspeção.
Clique com o botão direito do mouse em Rótulo de 'tipo de entrada de catálogo', desça para encontrar 'opção de seleção' e remova desativado = 'desativado'. Isso ativará a seleção de opção e você poderá mudar para o texto agora e salvar.
fonte
No meu caso,
Encontrei o atributo created_by no "STORE -> [Attributes] Product".
E alterou o frontend_label para "any_sting ...",
Deveria ter valor.
Isso resolve o problema.
fonte
No meu caso, tive que excluir o atributo que está causando o problema. Por exemplo, era um nome de atributo de produto personalizado
preorder
. Eu apaguei o atributo e funcionou bem. Nenhuma das soluções acima foi aplicável para mim, pois o atributo não foi mencionado em nenhum arquivo xml.fonte
Migrei do magento 1.9.4 para 2.3.3 e consegui o problema.
Tivemos que atualizar a tabela eav_attribute e o campo frontend_input de 0 para "text". Você pode pesquisar o atributo com
frontend_input
= '0' Consulte nossa consulta ao banco de dados abaixo:Vejo que os atributos com attribute_code são "preorder" e "preorderdescript"
Boa sorte!
fonte
Tenho lutado com o mesmo problema após a migração do Magento 1.7 para o Magento 2.
Eu acho que você tem um problema com este atributo do produto:
created_by
Primeiro você precisa entender o papel desse atributo, você o está usando no seu projeto Magento 1? pode ser definido com um módulo Magento 1.
No meu caso, tive um problema com outro atributo personalizado:
aitfiles_title
e, como não preciso dele, removi-o do banco de dados Magento 2.Se você gostaria de fazer o mesmo para o seu atributo:
Funciona para mim e posso acessar a página do produto no painel de administração do Magento 2.
fonte
Você pode acessar seus conjuntos de atributos e remover o created_by do respectivo grupo de produtos e reindexar a loja. Isso resolveu meu problema.
fonte
Eu tenho um problema semelhante. Para mim, foi um problema com o atributo personalizado. Nesse caso, faz parte \ UiComponentFactory-> argumentResolver ('created_by', NULL) e o atributo é created_by.
Eu o tinha na tabela eav_attribute, mas estava ausente na lista de atributos do produto em admin. Acabei de removê-lo por meio de programação. Algo parecido:
fonte
Bem, todo mundo compartilha sua experiência, então eu tenho que adicionar a minha, talvez isso ajude alguém :)
Migro os dados do Magento 1.9 para o Magento 2.3.4 com a ferramenta de migração de dados
No meu caso, estou enfrentando o mesmo erro e verifico todos os casos acima, mas nada pode ajudar no final. Percebi que não tenho conjuntos de atributos no meu banco de dados: /
Então eu instalo o novo Magento porque não consigo encontrar o banco de dados Magento: / e pego o atributo padrão define valores e insiro na minha tabela de atributos :)
Depois disso, meu produto Magento 2.3.4 adiciona um novo produto e edita o produto funcionará corretamente :)
Como verifico esse erro Primeiro, quando clico em editar e adiciono, recebo apenas 500 erros, mas depois de descomentar a linha em app / bootstrap.php, vejo um erro.
fonte