Comments (4)
I'm not clear on why these policies exist at all? My understanding is that, in the absence of a policy, by default Nova will allow all actions on a resource. It seems like it would be much better to simply remove the policies and allow users to create their own if they require them.
We added them because of navigation. Are you using custom Role
class instead of spatie's ones from the package?
from nova-permission.
@vyuldashev Yes I am, but the policy is registered for the Spatie\Permission\Contracts\Role
interface which resolves to my custom App\Role class. I see now that yours is registered for the actual class specified in the config file. If I change mine to register the policy for my class directly, yours no longer overrides it.
Relying on the interface seems like it's probably the more "correct" approach to me, but it's debatable. In the meantime, I can use this work-around.
What needs to be present in my policy for navigation to work correctly? Just "viewAny"?
from nova-permission.
I will look into it.
What needs to be present in my policy for navigation to work correctly? Just "viewAny"?
There are more methods available: https://github.com/vyuldashev/nova-permission/blob/master/src/PermissionPolicy.php
from nova-permission.
I was working on this issue to submit a PR but it had a lot of breaking changes and it actually ended up being a re-write of this package.
So, I've created a new package: https://github.com/insenseanalytics/laravel-nova-permission
Key differences are as follows:
- Solves this issue and #4
- Also added the ability to use permissions based authorization for Nova resources (instead of policy based) if you'd like to do that for certain resources
Both forgetting the cache on attaching permissions and permission based authorization (optional) were critical for my application. Feel free to use it if you're in a similar boat. Cheers!
from nova-permission.
Related Issues (20)
- Error on update role and update user role HOT 3
- Roleselect required HOT 3
- Upgrade to spatie/laravel-permission v5 HOT 17
- Policy vs Direct (Bug?) HOT 9
- Not bug, Request info/help HOT 1
- support for spatie permissions v5? HOT 7
- Laravel 9 support HOT 7
- Laravel Nova 4 support HOT 7
- Hardcoded user name field trying to attach user to a role from Nova resource HOT 1
- Add Azerbaijan language
- Hide Certain Guards?
- There was a problem submitting the form
- Add wildcard permissions support
- 403 error HOT 1
- Remove a role from the list HOT 1
- Role detail page limit HOT 1
- Duplicates in sidebar HOT 1
- Select all checkbox
- Permissions table got deleted accidentally HOT 1
- Seeder JSON Generator
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nova-permission.