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

我正在尝试删除 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');


    }


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


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


幕布斯6054654
浏览 134回答 2
2回答

拉丁的传说

使用线使用 App\Http\Controllers\Controller;并用于删除在刀片&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <td>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {!! Form::open(array('route' => array('products.destroy', $product->id), 'method' => 'delete')) !!}&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<button type="submit" class="btn btn-danger" onclick="return confirm('Are you sure?')"><i class="fa fa-trash-o"></i></button>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{!! Form::close() !!}&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</td>

青春有我

正如所写的那样,您有一个无效的资源丰富的路线Route::resource('', 'TodosController');,它应该可以解释您的 404 错误。尝试类似:Route::resource('todo',&nbsp;'TodosController')然后使用 HTTP GET 重新测试 /todo 并查看您的TodosController@index()方法是否按预期工作。
打开App,查看更多内容
随时随地看视频慕课网APP