View more context



I did $fields->insertAfter('ChildPages', Tab::create('PopularResources')); and that got me what I was looking for.


@jkersu I get the following error when doing that: [Emergency] Uncaught InvalidArgumentException: Missing spec class


Looks like theres a issue where the old url stops working but the new one works:

Show 1 attachment(s)

Tested on Silverstripe 4.1.1 and 4.2.1

When changing the admin route by adding the following YML (as per the docs):

Name: myadmin
- '#adminroutes'
    'admin': ''
    'cms': 'SilverStripe\Admin\AdminRootController'

The new URL becomes active and works correctly. The old URL (eg.| now throws a 500 error (below). I would expect it to return a 404.

Uncaught InvalidArgumentException: Missing spec class
GET /admin
Line 403 in /app/vendor/silverstripe/framework/src/Core/Injector/Injector.php

The full stack trace is attached.|admin_error_trace.txt

Hide attachment content

Try removing this line maybe? 'admin': ''


taking that line out makes /admin work but it shouldnt be that


Ok try this the following. I tried it on my machine and it works 🙂

  1. ---
  2. Name: myadmin
  3. After:
  4. - '#adminroutes'
  5. ---
  6. SilverStripe\Control\Director:
  7. rules:
  8. 'admin': ''
  9. 'cms': 'SilverStripe\Admin\AdminRootController'
  11. SilverStripe\Admin\AdminRootController:
  12. url_base: 'cms'
  13. ---

Hello 🙂 I have some DataObjects setup, and when viewing via the modeladmin list, any summary fields that are of type HTMLText display the raw HTML in the summary list I have tried adding a summary field to the object. e.g. DescriptionSummary, with a custom getDescriptionSummary() function that makes a ->plain() call on the field to remove the HTML from display. This works. except it seems to cause an error in the Search function . a SQL error 'Field not Found: DescriptionSummary'. Could anyone provide any advice on how to fix that error, or have another way to not display the HTML in the summary list?

  1. private static $summary_fields = [
  2. ];

Something like this, should work but doesn't quite do it - the markup still shows in the GridField row:

  1. private static $summary_fields = [
  2. 'getSummaryDetail' => 'Summary',
  3. ];
  5. public function getSummaryDetail() : string
  6. {
  7. return DBField::create_field(DBHTMLText::class, $myMarkupAndHTMLAndStuff);
  8. }

thanks @theruss, I actually found that the specific solution was the

  1. $searchable_fields

var. This avoids the search function trying to search on custom summary fields such as getSummaryDetail

👍 (1)