Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Only allow 1 submenu #83

Closed
CLCWebsiteServices opened this issue Oct 25, 2023 · 2 comments
Closed

Only allow 1 submenu #83

CLCWebsiteServices opened this issue Oct 25, 2023 · 2 comments

Comments

@CLCWebsiteServices
Copy link

Bug report

What I did:

public function parent()
{
    return $this->belongsTo(SubMenu::class, 'parent_id')
        ->whereDoesntHave('children');
}

What I expected to happen:

$this->crud->addField([
    'label' => 'Parent',
    'type' => 'select',
    'name' => 'parent_id',
    'entity' => 'parent',
    'attribute' => 'name',
    'model' => SubMenu::class,
]);

I assumed that this would return only entries that don't already have a parent?

What happened:

It returned every entry.

Backpack, Laravel, PHP, DB version:

Laravel 10.28, PHP 8.2

@welcome
Copy link

welcome bot commented Oct 25, 2023

Hello there! Thanks for opening your first issue on this repo!

Just a heads-up: Here at Backpack we use Github Issues only for tracking bugs. Talk about new features is also acceptable. This helps a lot in keeping our focus on improving Backpack. If you issue is not a bug/feature, please help us out by closing the issue yourself and posting in the appropriate medium (see below). If you're not sure where it fits, it's ok, a community member will probably reply to help you with that.

Backpack communication mediums:

  • Bug Reports, Feature Requests - Github Issues (here);
  • Quick help (How do I do X) - Gitter Chatroom;
  • Long questions (I have done X and Y and it won't do Z wtf) - Stackoverflow, using the backpack-for-laravel tag;

Please keep in mind Backpack offers no official / paid support. Whatever help you receive here, on Gitter, Slack or Stackoverflow is thanks to our awesome awesome community members, who give up some of their time to help their peers. If you want to join our community, just start pitching in. We take pride in being a welcoming bunch.

Thank you!

--
Justin Case
The Backpack Robot

@CLCWebsiteServices
Copy link
Author

Agh, managed to fix this by doing the following:

$this->crud->addField([
    'label' => 'Parent',
    'type' => 'select',
    'name' => 'parent_id',
    'entity' => 'parent',
    'attribute' => 'name',
    'model' => SubMenu::class,
    'options' => (function($query) {
        return $query->whereDoesntHave('parent')->get();
    })
]);

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

No branches or pull requests

1 participant