我有一个刚刚从2.4-> 3.1更新的网站。
在我的本地环境中,一切正常,但是一旦上传到生产环境中,GridFields上的搜索过滤器将无法正常工作。我看不到任何错误,它们只是不过滤任何内容。
有人遇到过这个吗?
class Product extends DataObject {
static $db = array (
'URLSegment'=>'Varchar(255)',
'Name' => 'Text',
'ProductCode' => 'Text',
'Description' => 'Text'
);
static $has_one = array (
'ProductPage' => 'ProductPage',
'OverrideProductImage' => 'Image'
);
static $searchable_fields = array(
'Name',
'Description',
'ProductCode'
);
static $create_table_options = array(
'MySQLDatabase' => 'ENGINE=MyISAM'
);
public function getCMSFields() {
return new FieldList(
new TextField('Name'),
new TextField('ProductCode'),
new TextareaField("Description","Description"),
new Uploadfield("OverrideProductImage", "Product Image")
);
}
}
和
class ProductPage extends Page {
public static $db = array(
'ShowOnHome' => 'Boolean'
);
static $has_many = array (
'Products' => 'Product'
);
public function getCMSFields() {
$f = parent::getCMSFields();
$config = GridFieldConfig_RecordEditor::create();
$config->getComponentByType('GridFieldDataColumns')->setDisplayFields(array(
'Thumbnail' => 'Product Image',
'Name' => 'Name',
'ProductCode' => 'ProductCode',
'Description' => 'Description'
));
$config->addComponent(new GridFieldOrderableRows());
$productsField = new GridField(
'Products', // Field name
'Product', // Field title
$this->Products(),
$config
);
$f->addFieldToTab('Root.Products', $productsField);
return $f;
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句