用户应该能够删除他们创建的笔记。
到目前为止,我有一个删除链接,其中包含auth中间件。
<suite name="TEST-SUITE" verbose="10">
<test name="YSCBBB AUTOMATION">
<classes>
<class name="src/test/java.Login">
</class>
</classes>
</test>
</suite>
在我的笔记控制器中,我有这个功能来处理删除。
//AUTH GROUP
Route::group(['middleware' => 'auth'], function () {
//MY NOTES
Route::get('auth/notes', 'Auth\NotesController@index');
//DELETE NOTES
Route::get('auth/notes/{note}/delete','Auth\NotesController@delete');
//EDIT NOTES
Route::get('auth/notes/{note}/edit','Auth\NotesController@edit');
});
然而。我注意到任何用户都可以通过更改删除路由中的注释ID来删除其他用户注释。
我想为用户的笔记创建一个安全的删除链接,任何建议将不胜感激。
答案 0 :(得分:1)
您可以在此处执行发布请求而不是删除,然后使用请求类的authorize()
方法检查注释是否与登录用户实际相关。像这样:
if( Note::where('id', $note_id)
->where('user_id', Auth::user()->id)
->exists();
)
return true;
return false;