php - 在 laravel 资产()方法中需要帮助
问题描述
这是我在控制器中的代码:
public function update(User $user)
{
$attributes = request()->validate([
'username' => [
'string',
'required',
'max:255',
'alpha_dash',
Rule::unique('users')->ignore($user),
],
'name' => ['string', 'required', 'max:255'],
'avatar' => ['file'],
'email' => [
'string',
'required',
'email',
'max:255',
Rule::unique('users')->ignore($user),
],
'password' => [
'string',
'required',
'min:8',
'max:255',
'confirmed',
],
]);
$attributes['avatar'] = request('avatar')->store('avatars');
$user->update($attributes);
$user->password = Hash::make($user['password']);
$user->save();
return redirect($user->path());
}
在用户模型中:
public function getAvatarAttribute($value)
{
return asset($value);
}
在 show.blade :
<img
src= "{{ $user->avatar }}"
alt=""
class="rounded-full mr-4 absolute"
style="width: 150px; left: calc(50% - 75px); top: 300px"
>
但是当我转到个人资料时,图像没有出现,链接是“ http://127.0.0.1:8000/avatars/JyDwtghw73u9hakMZEThiQfrj5AK33ZA1FOO47qN.png ”
我尝试使用 mover() 方法而不是 store() 方法并且它可以工作,但是 move() 没有在公共场合为图像制作副本,它只是将图像从我设备中的原始路径链接起来
任何人都可以帮助我吗?
解决方案
推荐阅读
- html - 将 div 放置在图像顶部
- php - 为什么我在控制器中的模型调用期间出现禁止错误
- java - 如何使用带有 Cucumber 的 TestNG 划分并行和顺序测试
- xamarin - 从 xamarin.uitest 中的 app.Query 调用方法返回错误
- java - 我如何调用这个方法?
- python - Django - 通用 FormView - 将输入传递到模板中
- angular - Gridster高度可扩展
- node.js - 如何在我的代码中使用 telegraf-inline-menu 模块
- javascript - 在 react-native 中找不到变量 itemData
- mysql - 无法在 Azure AppService 中创建独立的 MySQL Docker 容器