Skip to content

Instantly share code, notes, and snippets.

@TiagoSilvaPereira
Created February 27, 2018 19:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save TiagoSilvaPereira/44a616563a2a911b52a6697c5f8c3549 to your computer and use it in GitHub Desktop.
Save TiagoSilvaPereira/44a616563a2a911b52a6697c5f8c3549 to your computer and use it in GitHub Desktop.
PWC Template Engine Example
<?php
use Illuminate\Database\Seeder;
use Spatie\Permission\Models\Role;
use Spatie\Permission\Models\Permission;
class RolesAndPermissionsSeeder extends Seeder
{
public function run()
{
// Reset cached roles and permissions
app()['cache']->forget('spatie.permission.cache');
// create permissions (AQUI A TEMPLATE ENGINE FAZ SEU TRABALHO)
<% for (let model of this.project.models) { %>
<% if(!model.isOnlyModel()) { %>
Permission::create(['name' => 'list <$ model.getNamePlural() $>']);
Permission::create(['name' => 'view <$ model.getNamePlural() $>']);
Permission::create(['name' => 'create <$ model.getNamePlural() $>']);
Permission::create(['name' => 'update <$ model.getNamePlural() $>']);
Permission::create(['name' => 'delete <$ model.getNamePlural() $>']);
<% } %>
<% } %>
// create roles and assign existing permissions
$role = Role::create(['name' => 'admin']);
$allPermissions = Permission::all();
$role->givePermissionTo($allPermissions);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment