Как получить актуальный файл после загрузки в Laravel? - PullRequest
0 голосов
/ 03 января 2019

Вот как я загружаю файл через мое представление, полученное из HomeController @ index:

<form action='csvUpload' method='POST'>
    @csrf
    <input type='file' name='dataframe' enctype="multipart/form-data">
    <button type='submit' name='upload'>Predict</button>
</form>

Вот мои веб-маршруты:

Auth::routes(['verify' => true]);

Route::get('/home', 'HomeController@index')->name('home');
Route::post('/csvUpload', 'HomeController@predict')->name('home');

Вот мой HomeController @ предикат:

public function predict(Request $request)
{   
    $file = $request->dataframe;
    var_dump($file); # I want this to be the actual file or
                     # To store it locally and then get that file path
}

Что возвращает string(13) "languages.csv", когда я загружаю свой CSV-файл. Как я могу получить актуальный файл? Я пытался $request->file('dataframe'), но это возвращает ноль.

Ответы [ 2 ]

0 голосов
/ 03 января 2019

enctype="multipart/form-data" должно быть на <form> и использовать $request->file(name-input)

0 голосов
/ 03 января 2019

Тип кодировки должен быть в вашей форме следующим образом:

<form action='csvUpload' method='POST' enctype="multipart/form-data">
    ...
</form>

И тогда в вашем контроллере вы можете получить доступ к файлу следующим образом:

$request->file('dataframe')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...