2017-02-04 18 views
9

काम नहीं कर रहे हैं, मैं केवल दिनांक फ़ील्ड को सत्यापित करने की कोशिश कर रहा हूं। इससे पहले कि मैं 5.4लैरवेल 5.4 कभी-कभी प्रमाणीकरण नियम

को Laravel 5.2 से अपग्रेड Laravel 5.2 इस नियम में यह ठीक काम कर रहा था ठीक काम करता है:

public function rules() 
{ 
    return [ 
     'available_from' => 'date', 
    ]; 

} 

5,4 में यह रिटर्न सत्यापन त्रुटि The available from is not a valid date. मैं इस नए नियमों

public function rules() 
{ 
    return [ 
     'available_from' => 'sometimes|date', 
    ]; 

} 

की कोशिश की अभी भी वही त्रुटि मिली है और sometimes नियम मान्यताओं को प्रभावित नहीं करते हैं। मैं इस त्रुटि से कैसे छुटकारा पा सकता हूं?

मुझे समझ में नहीं आता कि लार्वेल ने कुछ ऐसा क्यों बदल दिया जो पहले काम कर रहा था !!!

+1

प्रारूप के लिए आप किस प्रारूप का उपयोग कर रहे हैं? –

+0

मैं इस प्रारूप का उपयोग करता हूं 'YYYY-MM-DD' –

उत्तर

17

समस्या \ Illuminate \ Foundation \ Http \ Middleware \ ConvertEmptyStringsToNull :: क्लास Http \ Kernel.php में होती है।

जब आप खाली तिथि फ़ील्ड जमा करते हैं तो यह मिडलवेयर खाली स्ट्रिंग को शून्य में परिवर्तित करता है। फिर सत्यापन वैध तिथि त्रुटि नहीं देता है। अधिक जानकारी के लिए आप docs देख सकते हैं।

यह नल

public function rules() 
{ 
    return [ 
     'available_from' => 'sometimes|nullable|date', 
    ]; 

} 

साथ ठीक किया जा सकता Laravel docs से:

नल

क्षेत्र सत्यापन के तहत अशक्त हो सकता है। यह विशेष रूप से उपयोगी है जब तारों और पूर्णांक जैसे आदिम को मान्य करते हैं जो में शून्य मान हो सकते हैं।

संबंधित मुद्दे