如何从 laravel 的列表中删除待办事项列表项?

     2023-03-14     102

关键词:

【中文标题】如何从 laravel 的列表中删除待办事项列表项?【英文标题】:How can I delete a to do list item from the list in laravel? 【发布时间】:2019-10-31 05:11:56 【问题描述】:

我正在尝试删除 laravel 中的一个项目。这是我的代码:

这是我的路线:

Route::resource('', 'TodosController');

这是我的控制器:

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Todo;

class TodosController extends Controller

    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    
        $todos = Todo::all();
        return view('pages.home')->with('todos', $todos);
    

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    

        return view('pages.home');
    

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    
        $this->validate($request, [
            'todo' => 'required'
        ]);


        // Create todo
        $todo = new Todo;
        $todo->todo = $request->input('todo');
        $todo->save();
        return redirect('/')->with('success', 'Todo created');
    

    /**
     * Display the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function show($id)
    
        $todo = Todo::find($id);
        return view('pages.todo')->with('todo', $todo);
    

    /**
     * Show the form for editing the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function edit($id)
    
        //
    

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, $id)
    
        $todo = Todo::find($id);

        return redirect('/')->with('success', 'Todo edited');

    

    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function destroy($id)
    
        $todo = Todo::find($id);
        $todo->delete();

        return redirect('/')->with('success', 'Todo deleted');
    

这是我的表单模板:

<li class="list-group-item mb-5">

    -- Edit button --
    !! Form::open(['action' => ['TodosController@update', $todo->id], 'method' => 'POST', 'class' => 'pull-right']) !!
         Form::hidden('_method', 'PUT') 
         Form::submit('Edit', ['class' => 'btn btn-primary m-auto', 'style' => 'display:block;']) 
    !! Form::close() !!


    <p style="text-align:center;text-transform:uppercase;font-weight:700;font-size:2rem;" class="m-0 mt-5 mb-5">
        <a href=" url('/'.$todo->id) "> $todo->todo </a>
    </p>

    -- Delete button --
    !! Form::open(['action' => ['TodosController@destroy', $todo->id], 'method' => 'POST', 'class' => 'form-group']) !!
         Form::hidden('_method', 'DELETE') 
         Form::submit('&times;', ['class' => 'btn btn-danger m-auto', 'style' => 'display:block;']) 
    !! Form::close() !!


</li>

我希望它会删除该项目并重定向到/,但实际上它会重定向到/$id 并抛出404 not found error

伙计们,如果您在其他地方看到这个问题,我很抱歉,但我真的需要帮助,但我没有找到任何有用的东西。

谢谢。

【问题讨论】:

你的 laravel 日志文件是怎么说的? APP_DEBUG=true 在你的 .env 中设置了吗?如果没有,请设置它并使用您发现的任何错误更新您的问题。 【参考方案1】:

使用线

使用 App\Http\Controllers\Controller;

并用于删除

在刀片中

            <td>

                !! Form::open(array('route' => array('products.destroy', $product->id), 'method' => 'delete')) !!

                   <button type="submit" class="btn btn-danger" onclick="return confirm('Are you sure?')"><i class="fa fa-trash-o"></i></button>

                   !! Form::close() !!
           </td>

【讨论】:

【参考方案2】:

如您所写,您有一个无效的资源路由Route::resource('', 'TodosController');,这应该可以解释您的 404 错误。尝试类似:

Route::resource('todo', 'TodosController')

然后使用 HTTP GET 重新测试 /todo 并查看您的 TodosController@index() 方法是否按预期工作。

【讨论】:

如何让 splice() 方法在我的待办事项列表中工作?

】如何让splice()方法在我的待办事项列表中工作?【英文标题】:HowdoIgetthesplice()methodtoworkinmytodolist?【发布时间】:2022-01-1612:04:18【问题描述】:我正在构建一个简单的待办事项列表,并将使用拼接方法从列表中删除项目。我无... 查看详情

数据库中的待办事项列表项更新不适用于 Django

】数据库中的待办事项列表项更新不适用于Django【英文标题】:ToDoListitemupdateindatabasenotworkingwithDjango【发布时间】:2021-05-2221:13:00【问题描述】:我想完成我的待办事项应用程序。但是,我仍然无法正确编辑项目。我的想法是通... 查看详情

使用 jQuery 将新列表项添加到待办事项列表?

】使用jQuery将新列表项添加到待办事项列表?【英文标题】:AddinganewlistitemtoatodolistusingjQuery?【发布时间】:2021-06-2504:45:27【问题描述】:我是编码新手。我试图将输入值添加到givenToDos数组,将其附加到#to-do-listdiv,然后还将一... 查看详情

在AngularJS中编写待办事项列表时无法理解删除过程

】在AngularJS中编写待办事项列表时无法理解删除过程【英文标题】:NotabletounderstandthedeletingprocesswhilewritingtodolistinAngularJS【发布时间】:2017-02-1718:45:38【问题描述】:我正在尝试使用以下代码在Angularjs中编写待办事项应用程序。f... 查看详情

iis如何设置开以访问cshtml文件不是mvc架构的

...旨在解决此类问题,并且大多数框架都表现出色。但是您如何从许多JavaScript客户端MVC框架中选择合适 查看详情

当我将 OnResume 函数用于带有数据库的简单待办事项列表应用程序时,OnCreate 函数被删除

】当我将OnResume函数用于带有数据库的简单待办事项列表应用程序时,OnCreate函数被删除【英文标题】:OnCreatefunctionsgetremovedwhenIuseanOnResumefunctionforasimpleToDoListappwithaDatabase【发布时间】:2021-08-2407:27:15【问题描述】:我正在尝试... 查看详情

使用 localStorage 的待办事项列表

】使用localStorage的待办事项列表【英文标题】:To-DoListwithlocalStorage【发布时间】:2019-06-0213:23:53【问题描述】:我做了一个简单的待办事项清单。但我想让一个列表元素有一个text-decoration=line-through当我单击按钮时,列表项将设... 查看详情

JavaScript/HTML 中的待办事项列表

】JavaScript/HTML中的待办事项列表【英文标题】:ToDoListinJavaScript/HTML【发布时间】:2014-12-2319:54:49【问题描述】:我已经设置了这个待办事项列表,几乎所有的工作都很完美。但是,如果我删除列表中的所有内容。它不会让我添... 查看详情

如何根据优先级升序排列待办事项列表

】如何根据优先级升序排列待办事项列表【英文标题】:Howtoascendinglyorderatodolistbasedonpriority【发布时间】:2022-01-2111:06:56【问题描述】:因此,作为实习机会的一部分,我们被告知要制作一个待办事项列表CLI应用。问题是我不知... 查看详情

如何从 SwiftUI 的详细信息视图(编辑项目视图)中删除核心数据条目?

】如何从SwiftUI的详细信息视图(编辑项目视图)中删除核心数据条目?【英文标题】:HowtodeleteCoreDataentryfromDetailsView(EditItemView)inSwiftUI?【发布时间】:2019-12-0505:14:06【问题描述】:我在SwiftUI中制作了一个非常简单的应用程序。... 查看详情

离开视图时删除完成时的列表项

】离开视图时删除完成时的列表项【英文标题】:RemovingListItemsonCompletionWhenLeavingView【发布时间】:2020-07-0601:39:21【问题描述】:我正在构建一个用于学习SwiftUI的小型待办事项应用程序,我可以在CoreData中创建任务列表并将它们... 查看详情

在待办事项列表中隐藏/显示不同的内容并使用 JavaScript 一次显示一个内容 [关闭]

...【发布时间】:2021-11-2016:23:59【问题描述】:我正在使用laravel框架构建这个网站,我不擅长js技巧,因为我只需要列出待办事项标题,但是当用户点击它们时 查看详情

待办事项未出现在 Visual Studio 2012 的任务列表中

】待办事项未出现在VisualStudio2012的任务列表中【英文标题】:TodotasksnotappearingintheTaskListinvisualstudio2012【发布时间】:2012-08-3016:36:46【问题描述】:我最近升级到VisualStudio2012,除了以“//todo”开头的cmets不再出现在任务列表中之... 查看详情

如何使用对象属性从数组中删除对象 - React

】如何使用对象属性从数组中删除对象-React【英文标题】:Howtodeleteobjectfromarrayusingobjectproperty-React【发布时间】:2018-07-0107:15:51【问题描述】:我有一个待办事项列表,其中包含孙子项中的删除按钮,单击该按钮时会触发父项中... 查看详情

如何从我的列表中删除重复项? [复制]

】如何从我的列表中删除重复项?[复制]【英文标题】:HowcanIremoveduplicatesfrommylist?[duplicate]【发布时间】:2021-06-3014:16:05【问题描述】:我正在使用SwiftUI在视图中生成这个动态列表(显示生成列表的一部分):薰衣草柠檬石灰石... 查看详情

如何使列表视图构建器在颤振中成为可重新排序的列表视图(优先任务应用程序(待办事项应用程序))

】如何使列表视图构建器在颤振中成为可重新排序的列表视图(优先任务应用程序(待办事项应用程序))【英文标题】:howcanmakelistviewbuildertoareorderablelistviewinflutter(aprioritytaskapp(todoapp))【发布时间】:2021-09-1620:26:52【问题描述... 查看详情

C++ 待办事项列表重复输入。如何避免这种情况?

】C++待办事项列表重复输入。如何避免这种情况?【英文标题】:C++To-DoListrepeatsinputs.Howtoavoidthat?【发布时间】:2018-08-1600:36:10【问题描述】:我有以下代码,我正在尝试创建一个非常简单(不是那么简单)的待办事项列表。期... 查看详情

列表项旁边的 HTML 按钮无法正确显示

】列表项旁边的HTML按钮无法正确显示【英文标题】:HTMLbuttonsdonotdisplayproperlynexttolistitems【发布时间】:2020-01-1606:43:51【问题描述】:我正在构建传统的待办事项列表应用程序,以增加我对Vuejs的理解。大多数功能都按预期工作... 查看详情