2016-08-31 28 views
0

私はlaravel 5.2を使用しています。私はEloquentでデータの操作を研究しています。私はボタンで行を削除する必要があるテーブルがあります。Laravel - 行(テーブル)を削除する

問題:私は件のデータのために私を鼓舞するために、このビデオを見https://www.youtube.com/watch?v=1EyoZhfZ2TY:サーバーは経路エラー(NotFoundHttpException)

ガイドラインを返します。

ここではルート( routes.phpの

Route::delete('players&/{id}', '[email protected]'); 

ここでは、テンプレート(players.blade.php)最後のテーブルデータの注意を払ってください(TD)

 <tbody> 
    <?php 
     foreach($players as $player) { 
    ?> 
    <tr> 
     <td><?php echo $player->PLA_ID?></td> 
     <td><?php echo $player->PLA_Name?></td> 
     <td><?php echo $player->PLA_Surname?></td> 
     <td><?php echo $player->PLA_Pseudo?></td> 
     <td><span class="glyphicon glyphicon-pencil"></span></td> 
     <td><a href="delete&<?php echo $player->PLA_ID?>"><span class="glyphicon glyphicon-trash"></span></a></td> 
    </tr> 
    <?php } 
    ?> 
    </tbody> 
です

最後に、関数(PlayersController.php

<?php 

namespace App\Http\Controllers; 
use App\Models\Player; 
use App\Http\Requests; 
use Illuminate\Support\Facades\Input; 

class PlayersController extends Controller 
{ 
public function show(){ // reçoit l'url http://monsite.fr/users avec le  verbe "get" et qui retourne le formulaire. 

    $players = player::all(); 
    return view('players', ['players' => $players]); 
} 

public function insertPlayer(){ 
    $player = new Player; 

    $player->PLA_Name = Input::get('nom', false); 
    $player->PLA_Surname = Input::get('prenom', false); 
    $player->PLA_Pseudo = Input::get('pseudo', false); 

    $player->save(); 

    return redirect('players'); 
} 

public function deletePlayer($id){ 

    Player::destroy($id); 
    return redirect('players'); 
} 

}

私はあまりにも私の側に検索し、私の問題に時間を割いていただきありがとうございます

=)

P.S.このフレームワークでベストプラクティスが必要なので、コードを良くするアイデアがあれば、私のような初心者を助けることができます=)

答えて

0

経路を変更する:いくつかのこと

Route::post('/delete/{id}',[ 
    'uses' => '[email protected]' 
]); 

のようなHTMLアンカーをChnage

Route::get('delete/{id}', '[email protected]'); 

変更アンカーに。これは、ルートがGETルートである必要がある理由です。お役に立てれば。

+0

あなたが意味することを理解しています、ありがとうございますが、私はこのエラーがあります:コラムが見つかりません:1054不明な列 'id' 'where句'(SQL:select * from 'players' from' id' (7))。編集:どこでも検索しましたが、phpmyadminのカラム名にPLA_IDがあります。私はそれに取り組んでいます。 –

+0

@Arkhallあなたの投稿を更新して 'PlayersController @ deletePlayer'のコードを表示できますか? – Johnny

+0

この関数にはチェンジはありませんでしたが、ここにすべてのファイルPlayersControllerがあります –

0

あなたのルートは間違っています。常にGET要求を行う

<a href="{{ url('delete', $player->PLA_ID) }}"><span class="glyphicon glyphicon-trash"></span></a> 

アンカータグ:

<a href="{{ url('/delete/') }}<?php echo $player->PLA_ID?>"><span class="glyphicon glyphicon-trash"></span></a> 
+0

ありがとうございますが、サーバーがルートを見つけられない場合は、私はあなたの答えに取り組み、それを適用します。多分私は間違いを犯しました。 –

関連する問題