- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要扩展 Shopware 变体模型,以便添加一些自定义属性,例如金属类型、石头 gem 类型,这是基础文章。这些属性将在后端和前端使用。
我怎样才能做到这一点?谢谢
最佳答案
扩展 Shopware 核心模型本身根本不可能。根据您尝试扩展的具体模型,有两种不同的解决方法:
如果您要扩展文章本身,您可以使用自定义属性字段,如下所述:http://community.shopware.com/Anlegen,-Anpassen-und-Ausgabe-von-Artikel-Attributen_detail_1208.html
另一种方法是编写一个插件,在其中通过插件 install() 上的代码创建属性字段。这仅适用于具有属于实体本身的属性表的实体。例如 s_order 和 s_order_attributes
对于第二种方式,在插件的 Bootstrap.php 中创建一个方法,如下所示,并在插件的 install() 方法中调用该方法:
public function installOrderAttributes()
{
Shopware()->Models()->addAttribute(
's_order_attributes',
'ordermod',
'Random1',
'DECIMAL(12,4)',
false,
0.0000);
Shopware()->Models()->addAttribute(
's_order_attributes',
'ordermod',
'Random2',
'DECIMAL(12,4)',
false,
0.0000);
$metaDataCacheDoctrine = Shopware()->Models()->getConfiguration()->getMetadataCacheImpl();
$metaDataCacheDoctrine->deleteAll();
Shopware()->Models()->generateAttributeModels(array('s_order_attributes'));
}
/engine/Shopware/Components/Model/ModelManager.php 中的 addAttribute() 函数具有以下签名:
/**
* Shopware helper function to extend an attribute table.
*
* @param string $table Full table name. Example: "s_user_attributes"
* @param string $prefix Column prefix. The prefix and column parameter will be the column name. Example: "swag".
* @param string $column The column name
* @param string $type Full type declaration. Example: "VARCHAR( 5 )" / "DECIMAL( 10, 2 )"
* @param bool $nullable Allow null property
* @param null $default Default value of the column
* @throws \InvalidArgumentException
*/
public function addAttribute($table, $prefix, $column, $type, $nullable = true, $default = null);
希望这会有所帮助。
亲切的问候!
关于shopware - 扩展店件模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36400874/
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
我想加入 2 张 table 的 Grocery 店。子表有2个或更多匹配值 --store_specs-- |id | label |value |store_id| +---+-----
我在此代码中收到“ fatal error :无法在第 1540 行访问/Applications/XAMPP/xamppfiles/htdocs/cityland/application/libra
我是一名优秀的程序员,十分优秀!