添加更多uploadFile字段问题

时间:2016-11-30 18:14:40

标签: php silverstripe

我想在CMS中的滑块上添加小图片。目前我在这里的工作对我有用,我有一个大图像:

AwesomeClass

现在我想添加另一个字段。我添加了class Banner extends SortableObject { private static $db = array( ); private static $has_one = array( 'HomePage' => 'HomePage', 'Image' => 'Image', 'Target' => 'Page', ); private static $summary_fields = array( 'ID', 'Target.MenuTitle', ); public function getCMSFields() { $fields = new FieldList(); $img = new UploadField('Image'); $img->setFolderName('hpbanners'); $img->getValidator()->setAllowedExtensions(array('jpg','gif','png')); $fields->push($img); $drop = new TreeDropdownField('TargetID','Choose page','SiteTree'); $fields->push($drop); return $fields; } } ,据我所知,这应该在DB中添加新列,就像之前的Image一样,但我的问题是在DB表中我只有第一个图像,第二个没有添加:

$smallImage

所以请告诉我,因为我知道这个专栏会自动添加,我应该清除缓存还是我做错了什么?帮我! :)

1 个答案:

答案 0 :(得分:1)

关系始终采用'YourRelationName' => 'Type'的形式。因此,您的$has_one关系定义应为:

private static $has_one = array(
    'HomePage' => 'HomePage',
    'Image' => 'Image',
    'SmallImage' => 'Image', // Use type 'Image', not 'SmallImage'
    'Target' => 'Page',
);