Загрузить видео с Laravel

У меня проблема с загрузкой в ​​laravel. Мой взгляд :

{{ Form::open(array('url'=>'administration/video/create','method' => 'post','files'=>true)) }}
<p>
{{ Form::label('Titlu:') }}
{{ Form::text('title',null,array('class'=>'form-control')) }}
</p>
<p>
{{ Form::label('Description:') }}
{{ Form::text('description',null,array('class'=>'form-control')) }}
</p>
<p>
{{ Form::label('image','Imagine:') }}
{{ Form::file('image','',array('id'=>'','class'=>'')) }}
</p>
<p>
{{ Form::label('video','Video:') }}
{{ Form::file('video','',array('id'=>'','class'=>'')) }}
</p>
{{ Form::submit('Add',array('class'=>'btn btn-primary')) }}
{{ Form::reset('Reset',array('class'=>'btn btn-success')) }}
{{ Form::close() }}

Мой контроллер:

public function postCreate(){
$video = new \Video();
$video->title       = Input::get('title');
$video->description = Input::get('description');
$video->video_image = '';
$video->video_name  = '';
if(Input::hasFile('image')) {
$sImagePermalink = \Url_Lib::makePermalink($video->title);
$image = Input::file('image');
$filename = $sImagePermalink . "." . $image->getClientOriginalExtension();
$path = public_path('content/video/' . $filename);
Image::make($image->getRealPath())->resize(468, 249)->save($path);
$video->video_image = 'content/video/' . $filename;

$videoDocument = Input::file('video');
$videofile = $sImagePermalink . "." . $videoDocument->getClientOriginalExtension();
$pathVideo = public_path('content/video/' . $videofile);
Input::file('video')->move('content/video/', $pathVideo);
$video->video_name = 'content/video/' . $videofile;
}

$video->save();
return Redirect::to('/administration/video/add/')
->with('message_succes','Video added');
}

Я получаю сообщение об ошибке: SQLSTATE [23000]: нарушение ограничения целостности: 1048 Заголовок столбца не может быть пустым. Я не понимаю, почему? Пожалуйста, помогите мне.

2

Решение

Проблема в том, что когда вы создаете таблицу / схему, вы не установили, что заголовок столбца может быть обнуляемым,

Вы можете решить это двумя способами.
Вы можете либо изменить схему таблицы и установить столбец заголовка, обнуляемый,

Schema::create("yourtablename" , function($table){
........
$table->string("title")->nullable();
........
});

или вместо Input :: get («title») вы можете попробовать использовать значение по умолчанию, так что даже если оно пустое или пустое, оно будет иметь значение по умолчанию.

 Input::get("title" , "No title");
3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]