2017-01-16 10 views
1

Ich versuche Felder zu validieren, die in verschiedenen Tabellen gespeichert werden. Im Verkaufsformular muss der Benutzer quantity_sold eingeben. Es sollte nicht größer sein als available_stock. Das habe ich bisher. Es funktionierte gut, aber es akzeptiert derzeit keine Eingaben.Validieren von Feldern aus verschiedenen Tabellen-Laravel

$product_availability = Stock::select('available_stock')->where('product_id', $request->product_id)->first(); 

$rules = array(
     'product_id'    => 'required',     
     'quantity_sold'=>'max:'.$product_availability, 

    ); 
+0

Siehe http://stackoverflow.com/a/19145170/3918473 – Gayan

+0

Gayan- ich habe es überprüft, aber es ist anders als meine – Ashley

Antwort

0

Versuchen Sie, diese

$rules = array(
    'product_id'    => 'required',     
    'quantity_sold'=>'max:'.$product_availability->available_stock, 

); 

Wenn Ihr verfügbaren Bestand ist integer die Änderung 'Quantity_Sold' Wert in Regeln Array als

'integer|max:'.$product_availability->available_stock 

wenn available_stock ist dann schwimmen Sie können ändern ‚Quantity_Sold‘ Wert in Regeln Array als

'numeric|max:'.$product_availability->available_stock 
+0

Dank es funktionierte. Ich hatte vorher versucht, aber es scheiterte, ich habe keine Ahnung, warum es sich ändert – Ashley

+0

Ihre $ product_availability gibt Ihnen das Objekt, das aus available_stock bestehen wird. Also müssen Sie das available_stock-Feld von diesem Objekt holen. Es sollte funktionieren, wenn es auf jeden Fall fehlgeschlagen ist, können Sie mir Ihren Controller-Code schreiben. Ich würde mich freuen zu helfen. Sie können mir eine E-Mail an [email protected] senden – Vikash

Verwandte Themen