2017-04-12 3 views
1

Ich habe eine Funktion, wo ich report zu db.But, wenn ich diese Funktion ausführen, bekomme ich die Nachricht SQLSTATE [42S22]: Spalte nicht gefunden: 1054 Unknown column '0' in 'field list'Spalte nicht gefunden: 1054 Unbekannte Spalte '0' in 'Feldliste' in Laravel

Message

Database

Meine Funktion in der Steuerung

public function postCheckout(Request $request){ 
    if(!Session::has('cart')){ 
     return view('cart.shopping_cart'); 
    } 
    $data = $request->all(); 
    $oldCart=Session::get('cart'); 
    $cart=new Cart($oldCart);  
    $order=new Order(); 
    $order->order_code="Order00006"; 
    $order->user_id=Auth::user()?Auth::user()->id:1; 
    $order->full_name=$data['full_name']; 
    $order->phone=$data['phone']; 
    $order->address=$data['address']; 
    $order->recieve_address=$data['recieve_address']; 
    $order->total_product=$cart->totalQuantity; 
    $order->total_price=$cart->totalPrice;  
    $orderArr=array($order); 
    Order::insert($orderArr); 
} 

Im Modell

class Order extends Model 
{ 
    protected $table="orders"; 
    protected $fillable = [ 
    'order_code','user_id','full_name','phone', 'address', 'recieve_address', 'total_product','total_price' , 
    ]; 
    public function user(){ 
     return $this->belongsTo('App\User'); 
    } 
} 

Wie ich dieses Problem beheben kann?

Antwort

1

Verwenden Save-Funktion anstelle des Einsatzes

public function postCheckout(Request $request){ 
if(!Session::has('cart')){ 
    return view('cart.shopping_cart'); 
} 
$data = $request->all(); 
$oldCart=Session::get('cart');  
$order=new Order(); 
$order->order_code="Order00006"; 
$order->user_id=Auth::user()?Auth::user()->id:1; 
$order->full_name=$data['full_name']; 
$order->phone=$data['phone']; 
$order->address=$data['address']; 
$order->recieve_address=$data['recieve_address']; 
$order->total_product=$oldCart->totalQuantity; 
$order->total_price=$oldCart->totalPrice;  
$order->save(); 
echo "Data saved"; die; 
} 
+0

Also, wenn ich mehr Datensatz-Datenbank Speichern mag, wie kann ich mit Speichermethode excute? – John

+1

ja @John genau einfügen wird auch funktionieren, aber Sie, um die Dokumentation von Laravel 5.2 – kunal

+1

zu lesen Danke @Kunal, ich lese es – John

Verwandte Themen