मैं अपने आवेदन पर दो अलग-अलग फक्शन करने की कोशिश कर रहा हूं। एक कार्य पूरा करने के लिए और दूसरा हटाने के लिए लेकिन मुझे एक त्रुटि मिल रही है और फॉर्म लोड नहीं होता है: रूट [task.delete] परिभाषित नहीं है। मैं मार्गों के बीच संघर्ष को कैसे हल कर सकता हूं? फॉर्म तभी लोड होता है जब मैं दूसरा रास्ता निकालता हूं। अद्यतन: हटाएं फ़ंक्शन अब पूर्ण फ़ंक्शन के समान कार्य करता है।

Route::patch('/task/{task}',['uses' => 'TaskController@complete', 'as'=>       'task.complete']);

Route::delete('/task/{task}',['uses' => 'TaskController@delete', 'as'=> 'task.delete']);

Controller:
public function delete(Task $task) { $task->delete();                                                                                session()->flash('status', 'Task Deleted!'); return redirect('/profile/' . auth()->user()->id); }
-1
jsmith 30 जिंदा 2020, 23:40

3 जवाब

सबसे बढ़िया उत्तर

यदि आप हटाने का प्रयास करते हैं तो laravel दुनिया में आपको delete अनुरोध प्रकार का उपयोग करना चाहिए database से कुछ

तो यह होगा

Route::delete('/task/{task}',['uses' => 'TaskController@delete', 'as'=> 'task.delete']);

Route::patch('/task/{task}',['uses' => 'TaskController@complete', 'as'=> 'task.complete']);

आप इसके बारे में मूल रूटिंग अनुभाग में अधिक पढ़ सकते हैं

1
Joseph 30 जिंदा 2020, 23:57

एक अलग क्रिया का प्रयोग करें। जब तक वे विभिन्न विधियों का उपयोग करते हैं, तब तक आपके पास एक ही पैटर्न से मेल खाने वाले कई मार्ग हो सकते हैं।

Route::delete('/task/{task}',['uses' => 'TaskController@delete', 'as'=> 'task.delete']);
Route::post('/task/{task}',['uses' => 'TaskController@complete', 'as'=> 'task.complete']);
// or `Route::patch()`, both are valid.
0
Tim Lewis 30 जिंदा 2020, 23:44

बदलने की कोशिश

Route::patch('/task/{task}',['uses' => 'TaskController@delete', 'as'=> 'task.delete']);

प्रति

Route::delete('/task/{task}',['uses' => 'TaskController@delete', 'as'=> 'task.delete']);
0
Eduardo Hernandez 30 जिंदा 2020, 23:44