laravel的资源路由resource

  最近在学习laravel,在须要在路由中参数的时候发现了一个很好玩的懂西resource路由特意记下期详细用法

 

路由列表

Route::resource('re','Admin\ReController');

 Controller php

<?php namespace App\Http\Controllers\Admin; use Illuminate\Http\Request; use App\Http\Controllers\Controller; use Illuminate\Support\Facades\Input; class ReController extends Controller { //get.re 所有分类列表
    public function index($id = null){ echo "这里是index方法不能传入参数"; } //get.re/create 添加分类
    public function create(){ echo "这里是create方法不能传入参数"; } //post.re 添加分类提交
    public function store(){ echo "这里是store方法不能传入参数"; } //get.re/{id} 显示单个分类
    public function show($id){ echo "这里是show方法传入的参数是:".$id; dd(Input::all()); } //get.re/{id}/edit 更新分类
    public function edit($id){ echo "这里是edit方法传入的参数是:".$id; dd(Input::all()); } //put.re/{id} 显示单个分类信息
    public function update($id){ echo "这里是update方法传入的参数是:".$id; dd(Input::all()); } //delete.re/{id} 删除单个分类
    public function destroy($id){ echo "这里是destory方法传入的参数是:".$id; dd(Input::all()); } }

blade模板

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
</head>
<body>
    <form action="{{url('re')}}" method= "get">
        <input type="submit" value="这里是index方法" />
    </form>
 
    <form action="{{url('re/create')}}" method= "get">
        <input type="submit" value="这里是create方法" />
    </form>
    <form action="{{url('re/')}}" method= "post"> {{csrf_field()}} <input type="submit" value="这里是store方法" />
        
    </form>
    <form action="{{url('re/123')}}" method= "get">
        <input type="submit" value="这里是show方法" />
        
    </form>
    <form action="{{url('re/123/edit')}}" method= "get">
        <input type="submit" value="这里是edit方法" />    
    </form>
    <form action="{{url('re/123')}}" method= "POST">
        <input type="submit" value="这里是update方法" />
        <input type="hidden" name="_method" value="PUT">
        <input type="hidden" name="_token" value="{{csrf_token()}}" />    
    </form>
    <form action="{{url('re/123')}}" method= "post">
        <input type="submit" value="这里是destory方法" />
        <input type="hidden" name="_method" value="DELETE">
        <input type="hidden" name="_token" value="{{csrf_token()}}" />
    </form>
    
</body>
</html>

效果图

总结:想快速学习一个框架莫过于写博客了,在涉及传递参数的时候就懵逼了,网上搜索才发现有个资源路由。须要注意的就是原生的HTTP只支持get和post传想要用laravel中的PUT,DELETE方法必需要加默认的隐藏input数据并且要接CSRF验证html

转自:https://blog.csdn.net/jiavv5/article/details/60465038laravel

相关文章
相关标签/搜索