2016-09-19 8 views
2

私は、私の見解でこれを持って更新データベース

{{ Form::open() }} 
@if($order->paid == 0) 
    <button type="submit" class="btn btn-primary" value="1">Mark Order as Paid</a> 
@else 
    <button type="submit" class="btn btn-primary" value="0">Mark Order as Unpaid</a> 
@endif 
{{ Form::close() }} 

そして、この私のコントローラで

public function ordersPaidSubmit($orderId) {  
    $order = Order::where('order_id', $orderId)->first(); 
    if (!$order) { 
     App::abort(404); 
} 

    $paid = Input::get('paid'); 
    $order->save(); 

    return Redirect::to('/admin/orders'); 
} 

は、このようなボタン0または1に値を与えることが可能であり、クリックしてデータベース列を更新しますか?現在は更新されませんが、どのように更新することができますか?

答えて

2

あなたはこのように各ボタンに1つの隠れフィールドを置くことができます。

{{ Form::open() }} 
@if($order->paid == 0) 
    {{ Form::hidden('paid', 1, ['id' => 'paid']) }} 
    <button type="submit" class="btn btn-primary" value="1">Mark Order as Paid</a> 
@else 
    {{ Form::hidden('paid', 0, ['id' => 'paid']) }} 
    <button type="submit" class="btn btn-primary" value="0">Mark Order as Unpaid</a> 
@endif 
{{ Form::close() }} 

だから、隠しフィールドの意志が

<input id="paid" name="paid" type="hidden" value="1"> 
and 
<input id="paid" name="paid" type="hidden" value="0"> 

のように見える私はあなたに$orderない$paidを使用することを確信していますコントローラ。だから、聖霊降臨祭の

$order->paid = Input::get('paid'); 

そして、あなたのフォームのボタンが動作します

$paid = Input::get('paid'); 

この行を変更します。

関連する問題