【发布时间】:2018-01-16 13:14:56
【问题描述】:
我已经编写了一些代码来使用 crud 表将徽标(图片)上传到广播电台,上传功能在创建新广播电台时起作用,现在我使用以下方法为同一个 crud 表创建了更新功能控制器中的代码:
public function update(Request $request, $id)
{
request()->validate([
'title' => 'required',
'url' => 'required',
'logo' => 'nullable',
]);
if ($request['logo'] === null) {
Internetradiostations::find($id)->update($request->all());
return redirect()->route('internetradiostationseditor.index')
->with('success','Internet radio station ge-updated');
} else {
$input['logo'] = time().'.'.$request->logo->getClientOriginalExtension();
$request->logo->move(public_path('logos'), $input['logo']);
$input['title'] = $request->title;
$input['url'] = $request->url;
Internetradiostations::find($id)->update($input);
return redirect()->route('internetradiostationseditor.index')
->with('success','Internet radio station ge-updated');
}
}
执行代码时出现以下错误:
Call to a member function getClientOriginalExtension() on string
有人知道如何解决这个问题吗?我只将创建更改为更新:
Internetradiostations::create($input);
收件人:
Internetradiostations::find($id)->update($input);
【问题讨论】:
-
你确定
logo输入有type="file"吗? -
@Dmitry 添加了
type="file"以形成刀片:` {!! Form::file('logo', array('type' => 'file', 'class' => 'form-control' )) !!}, `没解决问题
标签: javascript image laravel-5.5