Twill is an open source CMS toolkit for Laravel that helps developers rapidly create a custom admin console that is intuitive, powerful and flexible. Chat with us on Discord at https://discord.gg/cnWk7EFv8R.
Currently when using the bucket feature, the morphMap has to match exactly the name of the twill module, this is very restrictive especially in projects where the morphMap was already defined, because the featured_type column is saved using the module name instead of the MorphMap of the class
This effectively results in a fatal error when loading the Feature because the Morph fails
This PR aims to fix this issue by correctly saving the Feature using the morph map
It also fixes the label displayed here to be taken from the bucketable config rather than the current behavior of ucfirst the module name on reload
And it improves the performance of the bucket controller which currently loads all of the repositories in any case even though only one is ever displayed at a time, it now only loads the first one or the requested one
Also added a documented 'repository' option for bucketables to allow passing the repository class directly (or it cannot work with Package capsules)
PS: it would also be a nice addition to buckets to add an option to edit the featured model either clicking on the title or with an edit button somewhere here
Description
Currently when using the bucket feature, the morphMap has to match exactly the name of the twill module, this is very restrictive especially in projects where the morphMap was already defined, because the featured_type column is saved using the module name instead of the MorphMap of the class
This effectively results in a fatal error when loading the Feature because the Morph fails
This PR aims to fix this issue by correctly saving the Feature using the morph map
It also fixes the label displayed here to be taken from the bucketable config rather than the current behavior of ucfirst the module name on reload And it improves the performance of the bucket controller which currently loads all of the repositories in any case even though only one is ever displayed at a time, it now only loads the first one or the requested one
Also added a documented 'repository' option for bucketables to allow passing the repository class directly (or it cannot work with Package capsules)
PS: it would also be a nice addition to buckets to add an option to edit the featured model either clicking on the title or with an edit button somewhere here