我已经创建了一个插件,创建了一个管理路径,但是将数据插入Shopware 6数据库不起作用。下面是我的密码。在构建过程之后,它不起作用了,我做错了什么?从下面的代码中,我试图将数据'Diekedie‘插入到'product_manufacturer_translation’表的'name‘列中。
const { Component, Mixin } = Shopware;
import template from './custom-module-list.html.twig'
Component.register('custom-module-list', {
template,
inject: [
'repositoryFactory'
],
metaInfo() {
return {
title: this.$createTitle()
};
},
data: function () {
return {
entity: undefined
}
},
methods: {
manufacturerRepository() {
return this.repositoryFactory.create('product_manufacturer_translation');
}
},
computed: {
},
created() {
this.manufacturerRepository();
this.entity = this.manufacturerRepository.create(Shopware.Context.api);
this.entity.name = 'Diekedie';
this.manufacturerRepository.save(this.entity, Shopware.Context.api);
}
});发布于 2022-09-15 09:44:45
要设置翻译,您可以使用相关实体的存储库,而不是翻译本身的存储库。另外,如果有一个返回创建的存储库的方法,则必须使用该返回值来创建实体:
methods: {
manufacturerRepository() {
return this.repositoryFactory.create('product_manufacturer');
},
},
created() {
const repository = this.manufacturerRepository();
this.entity = repository.create(Shopware.Context.api);
this.entity.name = 'Diekedie';
repository.save(this.entity, Shopware.Context.api);
}https://stackoverflow.com/questions/73727890
复制相似问题