devKore
164
3
Nova

relatableQuery for two resource fields on same model

Posted 1 month ago by devKore

I have a relationship between work 'days' and projects of different types. So my 'days' record has a reference to my 'projects' table twice because I have two different types of projects called 'Series' and 'Event'.

In my 'days' resource I've created two fields as such:

BelongsTo::make('Series','series',Project::class)->sortable()->nullable(),
BelongsTo::make('Event','event',Project::class)->sortable()->nullable(),

What I'm trying to do is filter the projects by their types so I've created this:

public static function relatableProjects(NovaRequest $request, $query){
    return $query->where('type', 'Series');
}

I've tried making relatableSeries and relatableEvents but they don't work. How can I make this connect to the fields correctly without having to create two separate tables for 'series' and 'events'.

The relatableQuery above winds up filtering both resource fields.

Thanks, Nate

Please sign in or create an account to participate in this conversation.