No Magento 2, as ui_component
grades baseadas permitem reordenar as colunas e o Magento lembrará suas configurações na próxima vez que você efetuar login. Isso é conseguido pelo Magento salvando dados na ui_bookmark
tabela (através de um Magento\Ui\Model\Bookmark
objeto de modelo).
Embora esse recurso seja interessante, ele pode criar problemas quando um desenvolvedor de extensões ou integrador de sistemas usa o Magento ui_component
XML para adicionar colunas a uma tabela. Se houver dados personalizados ui_bookmark
, o Magento (aparentemente) ignorará a ordem de classificação de uma nova coluna e coisas estranhas / inesperadas podem acontecer.
Existe uma prática recomendada e / ou sistema para desenvolvedores de extensões que desejam adicionar colunas a uma UI Grid (do Magento ou da sua própria) e garantir que uma coluna esteja em algum lugar em relação às outras? ie - "Este segundo botão de ação sempre deve aparecer por último ou sempre aparece em último lugar" ou "o campo de nome deve estar sempre após o ID.
Um desenvolvedor de extensão precisa, por meio de uma app/code/Package/Module/Setup/...
classe, acessar a ui_bookmark
tabela e atualizar essas entradas elas mesmas? Ou existe uma maneira melhor de conseguir isso? Ou os desenvolvedores de extensões precisam apenas viver com uma coluna sendo adicionada a locais inesperados quando um usuário já tem uma entrada ui_bookmark
?