page-blocks icon indicating copy to clipboard operation
page-blocks copied to clipboard

Cannot use with populate

Open wernerkrauss opened this issue 9 years ago • 1 comments

Hi, when trying to add Blocks using populate (https://github.com/dnadesign/silverstripe-populate) it crashes:

  • Creating faq (ContentSectionBlock) ERROR [User Error]: Uncaught SS_DatabaseException: Couldn't run query:

SELECT MAX("SortOrder") FROM "Block" WHERE "ParentID" =

Somehow the Parent relation is added after creating it first?

Changing Block::onBeforeWrite to

if (!$this->exists() && !$this->SortOrder && $this->ParentID) {

fixes this problem locally.

wernerkrauss avatar Jan 22 '16 08:01 wernerkrauss

Interesting. So when you populate the blocks, you don't set their parent-id? How do you establish the relation to the pages?

The problem with your fix is, that it will probably never write the sortorder, since once the Block is written the $this->exists() check will return true.

I guess it makes more sense to reduce the check to SortOrder and ParentID then…

bummzack avatar Jan 22 '16 09:01 bummzack