【问题标题】:Passing database value using <a href in laravel在 laravel 中使用 <a href 传递数据库值
【发布时间】:2018-07-25 23:15:29
【问题描述】:

我是 Laravel 的新手,正在做我的第一个项目。我正在尝试通过将表行的名称通过其删除链接 (a =href) 传递给路由,然后传递给控制器​​来删除表行,这样我就可以运行 mysql 查询来删除该行。

这是我的表的代码

<table class="table table-bordered table-striped table-highlight">
    <thead>
    <tr bgcolor="#c7c7c7">
        <th>Language</th>
        <th>Description</th>
        <th>Action</th>
    </tr>
    </thead>
    @foreach($getAllangLuages as $list)
    <tr>
        <td>{{$list->language_name}}</td>
        <td>{{$list->description}}</td>
        This is the issue->
        <td><a href="{{url('languages/deleterow')}}?{{$list->language_name}}">Delete</a></td>
    </tr>
    @endforeach
</table>

我正在尝试找到正确的方法将其名称传递给路由,然后最终传递给控制器​​。

谁能告诉我在我的路线中放什么::?我在链接到它时遇到问题

【问题讨论】:

  • 添加你的路由定义和删除函数的控制器代码

标签: php html laravel


【解决方案1】:

也许我们可以这样做,这就是我在当前项目中所做的:

HTML

<a href="groups/delete/{{$groups['id']}}"><button type="button" class="btn btn-info btn-circle " data-toggle="tooltip" data-placement="bottom" title="" data-original-title="delete Groups"><i class="material-icons">remove_red_eye</i></button></a>

我的路线:

Route::get('/groups/delete/{id}','admin\GroupsController@getDeleteUsersGroups');

【讨论】:

    【解决方案2】:

    如果您的路线有名称,则使用 route 函数并将 id 作为参数传递给它

    <a href="{{route('languages.deleterow',$list->id)}}">Delete</a>
    

    否则将 id 作为参数传递给url 方法

    <a href="{{url('languages/deleterow',$list->id)}}">Delete</a>
    

    【讨论】:

    • 路线怎么样?
    • @styles9 你是什么意思?
    • 将其路由到我的控制器
    【解决方案3】:

    您可以使用路由命名来进行干净的操作。 Laravel Routing

    Route::get('languages/deleterow/{name}', function ($name) {
        return App::make('LanguageController')->delete($name);
    })->name('deleteLang');
    
    <a href="{{ route('deleteLang', ['name' => $list->language_name]) }}">Delete</a>
    

    【讨论】:

      【解决方案4】:

      试试这个方法:

      <a href= "{{ url('languages/deleterow',['ID' => $list->language_name]) }}">{{ $list->language_name }}</a>
      

      【讨论】:

        【解决方案5】:

        试试这个:

        <table class="table table-bordered table-striped table-highlight">
            <thead>
            <tr bgcolor="#c7c7c7">
                <th>Language</th>
                <th>Description</th>
                <th>Action</th>
            </tr>
            </thead>
            @foreach($getAllangLuages as $list)
            <tr>
                <td>{{$list->language_name}}</td>
                <td>{{$list->description}}</td>
        
                // Change This
                <td><a href="{{ route('languages.delete', $list->language_name) }}">Delete</a></td>
        
            </tr>
            @endforeach
        </table>
        

        使用Named routes:

        Route::GET('/languages/deleterow/{name}', 'YourController@methodName')->name('languages.delete');
        

        【讨论】:

          【解决方案6】:

          在 web.php 中:

          Route::get('delete/{id}','CategoryController@delete');
          

          在刀片文件中:

          <a href = 'delete/{{$getAllangLuages ->id}}'><button type="button">Delete</button></a></td>
          

          【讨论】:

            猜你喜欢
            • 2012-08-04
            • 2020-07-08
            • 2021-05-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多