I want to use Laravel Nova for my CRM. I want a user to be able to sign up, and add their users to their own organization, or allow users to join an organization. Each organization will have its own data, and should be private per organization.
What would the best way to do this, as Nova defaults to all users seeing all data?
With non-Laravel, I'd do something like:
Users Table
===========
user_id
Organization Table
==================
org_id
Organization Members
====================
org_id
user_id
Laravel policies is one of your options. In my opinion with Laravel Nova using just policies is not enough to manage all of your permissions in the platform yo're building. Consider using any nova package(or build your own) for handling permissions and roles management. Here is one of the most popular packages: https://novapackages.com/packages/silvanite/novatoolpermissions