我有一个输入字段,可以让人们上传文件.我希望他们可以上传,像doc这样的文件,以及像csv,xlsx这样的文件.
当我尝试.doc没有任何问题,但当我尝试使用excel文件时,验证器失败并说不是好的扩展.
在这里你可以看到我的代码,两行评论是我尝试的另一种解决方案,它也不起作用:(.
欢迎任何帮助.
public function postFile(Request $request)
{ //Règle de validation avec les type de fichiers acceptés
if(isset($request->file)){
//dd($request);
$validator=Validator::make($request->all(),[
'file'=>'required|max:50000|mimes:xlsx,doc,docx,ppt,pptx,ods,odt,odp,application/csv,application/excel,
application/vnd.ms-excel, application/vnd.msexcel,
text/csv, text/anytext, text/plain, text/x-c,
text/comma-separated-values,
inode/x-empty,
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
/* 'extension' => strtolower($request->file->getClientOriginalExtension()),
'extension'=>'required|in:doc,csv,xlsx,xls,docx,ppt,odt,ods,odp'*/
]);
if ($validator->fails()) {
return back()
->withErrors($validator);
}
Run Code Online (Sandbox Code Playgroud) 我尝试了很多东西,但我被这个问题困住了。我尝试对我的应用程序进行测试(使用 Laravel5.3)。我的开发数据库是 Mysql ,但我想用 sqlite"memory" 数据库进行测试。
每次我尝试启动测试时都会出现此错误:一般错误:1 没有这样的表:groupe_user
它似乎不迁移 sqlite 数据库中的表。我不明白我做错了什么。
我把我的 testCase 文件和迁移放在这里,如果有人可以帮助我,那就太好了。
TestCase.php :
<?php
abstract class TestCase extends Illuminate\Foundation\Testing\TestCase
{
/**
* The base URL to use while testing the application.
*
* @var string
*/
protected $baseUrl = 'http://localhost';
/**
* Creates the application.
*
* @return \Illuminate\Foundation\Application
*/
public function createApplication()
{
$unitTesting = true;
$testEnvironment = 'testing';
$app = require __DIR__.'/../bootstrap/app.php';
$app->make(Illuminate\Contracts\Console\Kernel::class)->bootstrap();
return $app;
}
public function setUp()
{
parent::setUp();
$this->createApplication();
$this->prepareForTests();
}
private …Run Code Online (Sandbox Code Playgroud)