1
저는 SilverStripe을 처음 접했습니다. 포럼을 검색하고 설명서를 읽었지만 내가 무엇을했는지 알 수 없었습니다.SilverStripe - 한 페이지에만 해당하는 데이터 객체를 표시합니다.
나는 dataobjectmanager를 사용하여 슬라이드 쇼 이미지를 페이지에 추가하고 있습니다. 슬라이드 쇼 이미지가 포함 된 한 페이지를 만든 다음 동일한 페이지 유형에서 새 페이지를 만들면 슬라이드 쇼 이미지가 이미 첫 페이지의 이미지로 채워집니다. 글로벌 자산으로 추가 된 것 같아요?
dataobjectmanager로 한 페이지에만 개체를 추가 할 수 있습니까?
이
이 당신이Slide
has_one
HomePage
는하지만해야한다는 지정한의 관계에서
<?php
class AwardsHolder extends Page {
static $db = array(
);
static $has_many = array(
'Slides' => 'Slide',
'Spotlights' => 'Spotlight'
);
static $allowed_children = array('ArticlePage');
public function getCMSFields() {
$fields = parent::getCMSFields();
$manager = new DataObjectManager(
$this,
'Slides',
'Slide'
);
$fields->addFieldToTab("Root.Content.Slideshow", $manager);
$manager = new DataObjectManager(
$this,
'Spotlights',
'Spotlight'
);
$fields->addFieldToTab("Root.Content.Spotlights", $manager);
$fields->removeFieldFromTab("Root.Content.Main", 'Content');
return $fields;
}
}
class AwardsHolder_Controller extends Page_Controller {
}
그리고 고쳐졌습니다. 고마워, 나는 이걸 가지고 몇 시간 동안 책상에 머리를 두드렸다. –