Jump to:

17452 Posts in 4473 Topics by 1971 members


SilverStripe Forums » Archive » ModelAdmin - patch and suggestions

Our old forums are still available as a read-only archive.

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

Page: 1
Go to End
Author Topic: 849 Views
  • Hamish
    Community Member
    712 Posts

    ModelAdmin - patch and suggestions Link to this post

    HI all,

    @coredevs - I've submitted a patch (2826) for ModelAdmin but I couldn't set the milestone/version to 2.3. Could someone change it?

    The purpose of the patch is to fix a css issue with subclassed ModelAdmin's, resolve the issue around the Link() method and to suggest a couple of further improvements.

    At the moment, it looks like you wanted to interrogate director for the correct URL, but it occurred to me that in your _config file, you have to send directives to Director and LeftAndMain to set up your controllers etc.

    It would be preferable to encapsulate that logic inside ModelAdmin itself. For example, instead of:

    Director::addRules(100, array(
       'admin/myadmin' => 'MyAdmin',
       _t('LeftAndMain.MYADMIN', 'MYADMIN'),

    you would do:


    Since you would keep the panel name and url inside of MyAdmin, and it already knows what class it is, the only other functionality that you might want is the ability to move it around the menu and/or set director priorities.

    Consequently, since it is aware of it's url you can return Link() in a CMSMain friendly form.

    It's a small change, but it solves the Link() issue, it provides a friendly way to add menu items and director instructions and looks nicer all round.


  • Willr
    Forum Moderator
    5511 Posts

    Re: ModelAdmin - patch and suggestions Link to this post

    Hamish - fixed the ticket for you. As for the patch, it seems logical to me but hey I'm not the one integrating the patches!

Page: 1
Go to Top

Want to know more about the company that brought you SilverStripe? Then check out SilverStripe.com

Comments on this website? Please give feedback.