Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

General Questions /

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Why isn't my requireDefaultRecords() being called?


Reply


2 Posts   871 Views

Avatar
brianmwaters

Community Member, 5 Posts

12 April 2011 at 12:54pm

I have a class ETSCustomer which decorates Member. (Actually, it's a subclass of EcommerceRole from the ecommerce module.)

It's registered like this in mysite/_config.php:
Object::remove_extension('Member', 'EcommerceRole');
Object::add_extension('Member', 'ETSCustomer');
And it seems to be working properly, except that it's requireDefaultRecords() method is not being called on /dev/build.

I'm not familiar enough with SS to know how methods are dispatched on /dev/build. Anyone have any thoughts as to why my method isn't getting called?

Avatar
brianmwaters

Community Member, 5 Posts

13 April 2011 at 3:49pm

simon_w answered this for me in on the IRC channel. For archive purposes, I'll list it here:

It's because Member, which my class decorates, doesn't call parent::requireDefaultRecords() or extend('requireDefaultRecords'), so that method never gets called in the decorator. Apparently it's been fixed in SS 3.