Open ArnaudBan opened 1 year ago
Thanks for creating an issue and providing a reproduction repo. I am not really sure how to tackle this though, since currently we just serialize the closures and of course the user gets lost on the queue. Need to think of some workarounds.
I probably won't have time to look into this in the next weeks as I still have some client work and still haven't upgraded my plugins for Filament v3 which is a priority for me.
I have similar issues when using Auth::user() in a closure of a filter method (e.g. visible()), even without using ->fromTable().
Another related issue is global scopes using Auth::user(). As a workaround I use the ->modifyQueryUsing(...) method on the ExcelExport::make() method, to force my global scope.
Did you find any solution ?
No, sorry. Didn't have the time to look into this and it wasn't my priority so far, since there were other bugs. When I think about it: A possible solution would be to store the current user with the job and authenticate as that user before running the queue.
But I think I need to overwrite the Job classes from the excel package. Sounds like it would take quite some time.
Anybody know any work-around with this one? Seems like I have to remove queue()
method till this bug gets resolved.
@nitinatvaluelabs try official Export Action added in FilamentPhp V3
https://filamentphp.com/docs/3.x/actions/prebuilt-actions/export
@sadekd Does the official one support columns based on the logged in user? I think this is more of a new feature than a bug.
@sadekd Unfortunately, I am stuck with version 2 for the next two months. :(
I have create the smallest test project to reproduce the bug : https://github.com/ArnaudBan/filament-excel-export-reproduce-bug
There is a bug when :
fromTable()
and->queue()
auht()->user
Then when you export you have an error because the export try to get the query of the filament resource, but when it is done asynchronously there is no auth user