DOC Document requirements for Configurable trait

This commit is contained in:
Damian Mooyman 2018-04-26 12:35:02 +12:00 committed by GitHub
commit d4bc386b34
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -54,12 +54,27 @@ This can be done by calling the static method [Config::inst()](api:SilverStripe\
$config = Config::inst()->get('MyClass', 'property'); $config = Config::inst()->get('MyClass', 'property');
``` ```
Or through the `config()` object on the class. Or through the `config()` method on the class.
```php ```php
$config = $this->config()->get('property')'; $config = $this->config()->get('property')';
``` ```
You may need to apply the [Configurable](api:SilverStripe\Core\Config\Configurable) trait in order to access the `config()` method.
**mysite/code/MyOtherClass.php**
```php
use SilverStripe\Core\Config\Configurable;
class MyOtherClass
{
use Configurable;
}
```
Note that by default `Config::inst()` returns only an immutable version of config. Use `Config::modify()` Note that by default `Config::inst()` returns only an immutable version of config. Use `Config::modify()`
if it's necessary to alter class config. This is generally undesirable in most applications, as modification if it's necessary to alter class config. This is generally undesirable in most applications, as modification
of the config can immediately have performance implications, so this should be used sparingly, or of the config can immediately have performance implications, so this should be used sparingly, or