2017-02-03 3 views
1

Фактически, я использую этот код из расширенного класса.Silverstripe Как получить данные в SiteConfig из подклассов

Пример:

class EcommerceEmail extends Email { 
... 

    $from = SiteConfig::get()->first()->EcommerceDefaultEmail; 

... 
} 

Моя проблема вот $ от переменной. Он работает, но я не думаю, что это лучшая идея.

Я thinked это

$this->SiteConfig()->EcommerceDefaultEmail 

Или это

$this->owner->SiteConfig()->EcommerceDefaultEmail 

Мой последний два кода не работают, и я не знаю, почему. Есть ли другой способ получить EcommerceDefaultEmail в SiteConfig() из подкласса?

+2

'$ this-> owner' предназначен только для DataExtensions, которые« подключены »к другим объектам. Это отличается от подкласса (что вы делали с 'class EcommerceEmail extends Email') – wmk

ответ

5

Вы можете использовать SiteConfig::current_site_config(). Например.

SiteConfig::current_site_config()->EcommerceDefaultEmail 
Смежные вопросы