2015-04-28 73 views
1

如果用戶保存了文章,我使用if語句獲得以下代碼。我只是試圖用jquery從數據庫中刪除文章。我不確定哪裏會出錯?非常感謝幫助!如何使用JQuery和Laravel從數據庫中刪除

查看:

<form action="{{URL::route('article-delete')}}" method="post" id="article_one_delete"> 
<div class="form-group"> 
<input type="hidden" name="first_desc" value="{{$firstrow->description}}" class="form-control"> 
</div> 
<div class="form-group"> 
<input type="hidden" name="first_title" value="{{$firstrow->title1}}" class="form-control"> 
</div> 

<button type ="button" id="Recodelete" class="btn btn-success btn-xs">UnSave</button> 
{{Form::token()}} 

</form> 

路線:

Route::delete('/home/', array('as' => 'article-delete', 
'uses' => '[email protected]')); 

控制器:

public function deletearticle(){ 

$firsttitle  = Input::get('first_title'); 

$articledelete = UserSaveArticle::where('user_id', Auth::id() 
->where ('user_save_articles.chosen_title', $firsttitle))->delete(); 

return true; 

JQuery的:

$(document).ready(function(){ 
    $('#Recodelete').on('click', function(){ 
     var article_one_delete = $('#article_one_delete').serializeArray(); 
     var url_d   = $('#article_one_delete').attr('action'); 

     $.get(url_d, article_one_delete, function(data){ 
      console.log(data); 
     }); 
    }); 
}); 
+0

你有什麼錯誤嗎? –

+0

在你的控制器中試試: - > where('chosen_title','=',$ firsttitle) - > first();然後$ articledelete-> delete(); – retrograde

+0

不,數據庫獲取更新與空值,而不是行刪除 – Billy

回答

1
  1. 應該定義右路線DELETE製品,這樣的:
Route::delete('/article/{id}', ['as' => 'article-delete', 'uses' => '[email protected]']); 
  • HomeController $ id變量(物品ID)將可作爲方法的參數:
  • function deleteArticle($id) 
    { 
        … 
    } 
    
  • 在PHP側你定義DELETE路線,這意味着你應該使用ajax上JS側DELETE請求方法:
  • $.ajax({ 
        url: '/article/' + articleId, 
        type: 'DELETE', 
        success: function(result) { 
         // Do something with the result 
        } 
    }); 
    
    +0

    感謝limonte。實際上我正在重新設計我的數據庫。你的解決方案好得多! – Billy

    相關問題