Ich nutze die aktuelle Version von SS (2.3.2) und dort funktioniert das Listing 6.2 (class Developer extends Member) nicht mehr.
Über das eng. Forum habe ich die Möglichkeit erfahren, das man Member besser über DataObjectDecorator erweitern sollte.
Das funktioniert soweit auch, wenn ich es wie folgt einbinde:
mysite/code/Developer.php
<?php
class Developer extends DataObjectDecorator {
function extraStatics() {
return array(
'db' => array(
'Introduction' => 'Text',
'Region' => 'Varchar(200)'
),
'has_many' => array(
'References' => 'Reference'
),
'many_many' => array(
'Skills' => 'Skill'
)
);
}
}
?>
/mysite/_config.php
// ...
Object::add_extension('Member', 'Developer');
Was jetzt allerdings nicht mehr funktioniert ist die Erweiterung des Backends mit dem Listing 6.5 im Kapitel 6.3.1 (class CommunityAdmin extends ModelAdmin).
Wenn ich das einbinde, dann bekomme ich folgende Fehlermeldung via eMail:
Error: Uncaught Exception: Object->__call(): the method 'getdefaultsearchcontext' does not exist on 'Developer'
At line 515 in /sapphire/core/Object.php
Wie komme ich jetzt mit dem Buch weiter?

