Magento如何在指定最大长度的addAttribute中添加varchar属性

Magento如何在指定最大长度的addAttribute中添加varchar属性,magento,attributes,varchar,string-length,Magento,Attributes,Varchar,String Length,我正在使用magento,并尝试添加一个类型为varchar(50)的新类别属性。我添加了新属性,其中包含: $installer->addAttribute('catalog_category', 'shortdesc', array( 'type' => 'varchar', 'backend' => '',

我正在使用magento,并尝试添加一个类型为varchar(50)的新类别属性。我添加了新属性,其中包含:

$installer->addAttribute('catalog_category', 'shortdesc', array(
                    'type'              => 'varchar',
                    'backend'           => '',
                    'frontend'          => '',
                    'label'             => 'Descripción Corta',
                    'input'             => 'textarea',
                    'class'             => '',
                    'source'            => '',
                    'global'            => 1,
                    'visible'           => 1,
                    'required'          => 0,
                    'user_defined'      => 0,
                    'default'           => '',
                    'searchable'        => 0,
                    'filterable'        => 0,
                    'comparable'        => 0,
                    'visible_on_front'  => 0,
                    'unique'            => 0,
                    'position'          => 1,
                ));

但是最大长度是255。如何将属性长度更改为50?

事实上,Magento硬编码255值(从Community Edition 1.8.1.0开始),并且不接受参数来替换它

这对您来说应该不是问题,因为VARCHAR(255)是可以存储的最大字符数,但如果存储的字符数小于此值,则不会占用更多的空间。如果确实需要硬限制,则可以始终添加代码以观察类别的“保存前”事件,并在那里删除字符串


或者,在极端情况下,您确实希望对数据库进行这种硬限制,您可以。

我认为您不能使用magento样式来实现这一点,但我认为您可以使用java脚本或使用属性id的jquery来实现