लार्वा 5: वर्ग 'इनपुट' नहीं मिला


114

मेरी routes.phpफ़ाइल में मेरे पास है:

Route::get('/', function () {

    return view('login');
});

Route::get('/index', function(){
    return view('index');
});

Route::get('/register', function(){
    return view('register');
});
Route::post('/register',function(){

    $user = new \App\User;
    $user->username = input::get('username');
    $user->email  = input::get('email');
    $user->password = Hash::make(input::get('username'));
    $user->designation = input::get('designation');
    $user->save();

});

मेरे पास उपयोगकर्ताओं के पंजीकरण के लिए एक फॉर्म है। मैं फॉर्म इनपुट वैल्यू भी ले रहा हूं routes.php

लेकिन त्रुटि तब आती है जब मैं एक उपयोगकर्ता को पंजीकृत करता हूं। त्रुटि:

FatalErrorException in routes.php line 61:
Class 'input' not found

जवाबों:


275

यह है Inputऔर नहीं है inputयह कम हो गई है, क्योंकि आपको मैन्युअल रूप Inputसे config/app.phpइस परिभाषा को हटाना है कि aliasesनीचे के रूप में सरणी में जोड़ सकते हैं,

'Input' => Illuminate\Support\Facades\Input::class,

या आप Inputआवश्यक के रूप में सीधे मुखौटा आयात कर सकते हैं ,

use Illuminate\Support\Facades\Input;

क्या होगा अगर मैं लार्वा 5.2 में रूपों के लिए लारवेल्लेक्लेक्टिव का उपयोग करता हूं और मैं {{फॉर्म}} का उपयोग एक दृश्य में करता हूं, मार्गों में नहीं जैसा कि शैफी करता है। {{ Form::text('name', Input::old('name'), array('class' => 'form-control')) }}
nclsvh

2
आप इसे विश्व स्तर पर उपयोग करने के लिए \ इनपुट का उपयोग कर सकते हैं
गुलाबी वंसिया

मुझे इसे कैसे या कहाँ लगाना है? इनपुट को इनपुट में बदलना (फ़ॉर्म टैग के अंदर) काम नहीं करता है .. इसके अलावा मैं प्रबुद्ध \ support \ facades का उपयोग नहीं कर रहा हूं .. लेकिन"laravelcollective/html": "5.2.*"
nclsvh

क्षमा करें, मैंने आपकी पहले की टिप्पणी पर ध्यान नहीं दिया, लेकिन HTML में आप हेल्पर फंक्शन पुराने () का उपयोग कर सकते हैं, जो इनपुट के लिए कुछ भी नहीं है, लेकिन आवरण :: पुराना ()
pinkal vansia

@ नीकोलव आप इसे aliasesअंदर रख सकते हैं config/app.php, जैसा कि नवन का जवाब है
निक सुमीको

28

लार्वा < 5.2 के लिए :

कक्षा को खोलें config/app.phpऔर उसमें जोड़ें :Inputaliases

'aliases' => [
// ...
  'Input' => Illuminate\Support\Facades\Input::class,
// ...
],

लार्वा >= 5.2 के लिए

बदलें Input::करने के लिएRequest::


26

आप अपने में एक मुखौटा जोड़ सकते हैं folder\config\app.php

'Input' => Illuminate\Support\Facades\Input::class,

23

लारवेल में 5.2 इनपुट :: अनुरोध के साथ बदल दिया गया है ::

उपयोग

Request::

नियंत्रक या किसी अन्य वर्ग के शीर्ष पर जोड़ें

use Illuminate\Http\Request;

5

पहले आपकी समस्या इनपुट वर्ग की वर्तनी के बारे में है, इनपुट के बजाय इनपुट होना चाहिए। और आपको अच्छे नाम स्थान के साथ वर्ग को आयात करना होगा।

use Illuminate\Support\Facades\Input;

यदि आप इसे 'इनपुट' नहीं 'इनपुट' कहते हैं, तो इसे जोड़ें:

use Illuminate\Support\Facades\Input as input;

दूसरा, यह मार्ग में डेटाबेस में स्टोर करने के लिए एक गंदा तरीका है। php, और आप डेटा सत्यापन को संसाधित नहीं कर रहे हैं। यदि कोई भेजा गया पैरामीटर वह नहीं है जिसकी आपको उम्मीद थी, तो शायद एक SQL त्रुटि दिखाई देगी, इसका कारण डेटा प्रकार है। आपको नियंत्रक विधि में मॉडल के माध्यम से जानकारी और स्टोर करने के लिए नियंत्रक का उपयोग करना चाहिए।

Path.php फ़ाइल रूटिंग संभालती है। इसे कंट्रोलर और पूछे गए मार्ग के बीच की कड़ी बनाने के लिए डिज़ाइन किया गया है।

नियंत्रक, मिडलवेयर, मॉडल, सेवा के बारे में जानने के लिए ... http://laravel.com/docs/5.1/

यदि आपको कुछ और जानकारी की आवश्यकता है, तो समस्या के बारे में समाधान आप समुदाय में शामिल हो सकते हैं: https://laracasts.com/

सादर।



4

उपनाम / app.php में उपनाम के तहत घोषणा: -

'Input' => Illuminate\Support\Facades\Input::class,

या आप आवश्यकता के रूप में सीधे इनपुट मुखौटा आयात कर सकते हैं,

use Illuminate\Support\Facades\Input;

या

use Illuminate\Support\Facades\Input as input;


1

यह साफ कोड स्निपेट मेरे लिए ठीक काम करता है:

use Illuminate\Http\Request;
Route::post('/register',function(Request $request){

   $user = new \App\User;
   $user->username = $request->input('username');
   $user->email  = $request->input('email');
   $user->password = Hash::make($request->input('username'));
   $user->designation = $request->input('designation');
   $user->save();
});



0

यह लार्वा में बदल गया है 6. अधिक जानकारी के लिए यहां देखें

App.php और कहीं भी कुछ भी मत करो, बस बदलें

इनपुट :: get () रिक्वेस्ट के साथ :: इनपुट ()

तथा

शीर्ष पर आप इनपुट, सत्यापनकर्ता, हैश आदि की घोषणा करते हैं, इनपुट हटाएं और अनुरोध जोड़ें

कुछ का उपयोग करें:

विन्यास, DB, फ़ाइल, हैश, इनपुट , रीडायरेक्ट, सत्र, दृश्य, सत्यापनकर्ता, अनुरोध ;

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.