<p>سلام خسته نباشید من طبق آموزشها پیش رفتم فقط لاراول من لاراول 8 را نصب کردم الان این خطا را میده من عکس خطا را میذارم و کدهایی هم که نوشتم دقیقا با کد استاد یکی هستش و کدهایی هم که نوشتم را هم میذارم .</p><pre class=\"ql-syntax\" spellcheck=\"false\"><span class=\"hljs-comment\">//HasPermissions file---------------------------------</span>
<span class=\"hljs-meta\"><?php</span>
<span class=\"hljs-keyword\">namespace</span> <span class=\"hljs-title\">App</span>\\<span class=\"hljs-title\">Services</span>\\<span class=\"hljs-title\">Permission</span>\\<span class=\"hljs-title\">Traits</span>;
<span class=\"hljs-keyword\">use</span> <span class=\"hljs-title\">App</span>\\<span class=\"hljs-title\">Models</span>\\<span class=\"hljs-title\">Permission</span>;
<span class=\"hljs-keyword\">use</span> <span class=\"hljs-title\">Illuminate</span>\\<span class=\"hljs-title\">Support</span>\\<span class=\"hljs-title\">Arr</span>;
<span class=\"hljs-class\"><span class=\"hljs-keyword\">trait</span> <span class=\"hljs-title\">HasPermissions</span>
</span>{
<span class=\"hljs-keyword\">public</span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function</span> <span class=\"hljs-title\">hasPermission</span>(<span class=\"hljs-params\">Permission <span class=\"hljs-variable\">$permission</span></span>)
</span>{
<span class=\"hljs-keyword\">return</span> <span class=\"hljs-keyword\">$this</span>->permissions->contains(<span class=\"hljs-variable\">$permission</span>);
}
<span class=\"hljs-keyword\">public</span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function</span> <span class=\"hljs-title\">permissions</span>()
</span>{
<span class=\"hljs-keyword\">return</span> <span class=\"hljs-keyword\">$this</span>->belongsToMany(Permission::class, <span class=\"hljs-string\">\'permission_user\'</span>);
}
}
<span class=\"hljs-comment\">//web.php----------------------------------------------</span>
Route::get(<span class=\"hljs-string\">\'/hasPermission\'</span>,<span class=\"hljs-function\"><span class=\"hljs-keyword\">function</span> ()</span>{
auth()->user()->can(<span class=\"hljs-string\">\'delete users\'</span>);
});
<span class=\"hljs-comment\">//Model Permissions------------------------------------</span>
<span class=\"hljs-meta\"><?php</span>
<span class=\"hljs-keyword\">namespace</span> <span class=\"hljs-title\">App</span>\\<span class=\"hljs-title\">Models</span>;
<span class=\"hljs-keyword\">use</span> <span class=\"hljs-title\">Illuminate</span>\\<span class=\"hljs-title\">Database</span>\\<span class=\"hljs-title\">Eloquent</span>\\<span class=\"hljs-title\">Factories</span>\\<span class=\"hljs-title\">HasFactory</span>;
<span class=\"hljs-keyword\">use</span> <span class=\"hljs-title\">Illuminate</span>\\<span class=\"hljs-title\">Database</span>\\<span class=\"hljs-title\">Eloquent</span>\\<span class=\"hljs-title\">Model</span>;
<span class=\"hljs-class\"><span class=\"hljs-keyword\">class</span> <span class=\"hljs-title\">Permission</span> <span class=\"hljs-keyword\">extends</span> <span class=\"hljs-title\">Model</span>
</span>{
<span class=\"hljs-keyword\">use</span> <span class=\"hljs-title\">HasFactory</span>;
<span class=\"hljs-keyword\">public</span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function</span> <span class=\"hljs-title\">getRouteKeyName</span>()
</span>{
<span class=\"hljs-keyword\">return</span> <span class=\"hljs-string\">\'name\'</span>;
}
}
<span class=\"hljs-comment\">///PermissionServiceProvider---------------------------</span>
<span class=\"hljs-meta\"><?php</span>
<span class=\"hljs-keyword\">namespace</span> <span class=\"hljs-title\">App</span>\\<span class=\"hljs-title\">Providers</span>;
<span class=\"hljs-keyword\">use</span> <span class=\"hljs-title\">App</span>\\<span class=\"hljs-title\">Models</span>\\<span class=\"hljs-title\">Permission</span>;
<span class=\"hljs-keyword\">use</span> <span class=\"hljs-title\">Illuminate</span>\\<span class=\"hljs-title\">Support</span>\\<span class=\"hljs-title\">Facades</span>\\<span class=\"hljs-title\">Gate</span>;
<span class=\"hljs-keyword\">use</span> <span class=\"hljs-title\">Illuminate</span>\\<span class=\"hljs-title\">Support</span>\\<span class=\"hljs-title\">ServiceProvider</span>;
<span class=\"hljs-class\"><span class=\"hljs-keyword\">class</span> <span class=\"hljs-title\">PermissionServiceProvider</span> <span class=\"hljs-keyword\">extends</span> <span class=\"hljs-title\">ServiceProvider</span>
</span>{
<span class=\"hljs-keyword\">public</span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function</span> <span class=\"hljs-title\">register</span>()</span>{ }
<span class=\"hljs-keyword\">public</span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function</span> <span class=\"hljs-title\">boot</span>()
</span>{
Permission::all()->map(<span class=\"hljs-function\"><span class=\"hljs-keyword\">function</span> (<span class=\"hljs-params\"><span class=\"hljs-variable\">$permission</span></span>) </span>{
Gate::define(<span class=\"hljs-variable\">$permission</span>->name, <span class=\"hljs-function\"><span class=\"hljs-keyword\">function</span> (<span class=\"hljs-params\"><span class=\"hljs-variable\">$user</span></span>) <span class=\"hljs-keyword\">use</span> (<span class=\"hljs-params\"><span class=\"hljs-variable\">$permission</span></span>) </span>{
<span class=\"hljs-keyword\">return</span> <span class=\"hljs-variable\">$user</span>->hasPermission(<span class=\"hljs-variable\">$permission</span>);
});
});
}
}
</pre><p><br></p>