我试图删除旧的用户图像,如果用户更新他的个人资料图片.我正在使用Laravel 4.1和资源丰富的UsersController.
更新图片非常适合.一个新的保存在我的文件夹中,文件nave将被覆盖在数据库中.但是,我想删除旧图像.因此,我有以下代码,如果我在路由get'test'的空白页面上使用它,它可以正常工作
$oldimage = Auth::user()->profile_picture;
File::delete('img/profile_pictures/users/' . $oldimage);
Run Code Online (Sandbox Code Playgroud)
每当我尝试将此实现到更新图像的过程中时,旧的不会被删除.我已经记住,我必须在覆盖文件名之前删除旧的.
这是否必须对Controller用于更新的POST方法做任何事情?我该怎么办呢?
public function update($id){
$validation = Validator::make(
Input::all(), [
'name'=>'required',
'surname'=>'required',
'email'=>'required',
'email' => 'email']);
if($validation->fails()){
return Redirect::to(
'dashboard#profile'
)->withInput()->withErrors(
$validation->messages());
}
$user = User::find($id);
$user->name = Input::get('name');
$user->surname = Input::get('surname');
$user->email = Input::get('email');
if (Input::hasFile('profile_picture_update')) {
$oldimage = Auth::user()->profile_picture;
File::delete('img/profile_pictures/users/' . $oldimage);
}
$imageFile = Input::file('profile_picture_update');
$newprofile_picture = Image::make(
$imageFile->getRealPath()
)->resize(400, null, true)->crop(400, 400);
$name = time() . '-' .
Input::get('name') .
'-' . Input::get('surname') .
'.' . $imageFile->getClientOriginalExtension(); …Run Code Online (Sandbox Code Playgroud) 我试图显示绑定到我的用户模型的bootstrap格式化表单.但是,表单模型绑定似乎只有在我使用未使用引导程序样式格式化的输入字段时才能解决.
这是没有bootstrap类的一个,当我打开表单时,它完美地显示了我在db中的内容:
{{ Form::model($user) }}
{{ Form::label('name', 'Vorname:')}}
{{ Form::text('name')}}
Run Code Online (Sandbox Code Playgroud)
这是此表单的第二个输入,现在使用bootstrap类.这个不显示数据库内容.
{{ Form::label('sirname', 'Nachname:')}}
{{ Form::text('sirname', '', array('class'=>'form-control'))}}
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?有没有办法同时使用表单模型绑定和样式输入与引导类?
任何帮助,将不胜感激.
谢谢!
我对Laravel很新,但是我已经看了很多教程,所以我现在已经习惯了.但是,我想要链接到我的一个blade.php文件中的用户收藏夹.
这是我的bootstrap导航栏中的链接:
<li><a href="{{ URL::to('users/' . $user->id . '/favortites' }}"><i class="fa fa-heart"> </i> Favorites</a></li>
Run Code Online (Sandbox Code Playgroud)
我尝试过使用URL ::但它不起作用.我不确定我是否正确实现userId.
最后,我想要访问的链接应如下所示:users/5/favorites如果id为5的用户是经过身份验证的用户.
我真的很感激这里的一些帮助.
谢谢.
我想保存我的 fb-login 返回到数据库的这个 json 数组。但是我真的不知道如何使用 php 将其转换为字符串。
[{"id":"108124505876479","name":"Wakeboarding"},{"id":"112003352149145","name":"Bouldering"},{"id":"110008522357035","name":"Handball"}]
Run Code Online (Sandbox Code Playgroud)
我已经尝试过下面的这段代码,但我什至不太确定 fb 登录返回的内容是否是 json 数组。
$json = '{"id":"108124505876479","name":"Wakeboarding"},{"id":"112003352149145","name":"Bouldering"},{"id":"110008522357035","name":"Handball"}';
var_dump(json_decode($json));
Run Code Online (Sandbox Code Playgroud)
我如何才能将不同的运动以字符串形式保存到我的数据库中?
任何帮助将非常感激。
谢谢。
编辑:上半部分返回 NULL。
第二次编辑:
if (array_key_exists('sports', $me)){
$json = '$me['sports']'; PROBLEM IS HERE
$data = json_decode($json, true);
$sports = array();
foreach ($data as $item) {
$sports[] = $item['name'];
}
$user->fb_sports = $sports;
}
Run Code Online (Sandbox Code Playgroud) 我目前正在尝试将vue.js v-model包含到我的erb表单输入标记中,但我找不到正确的语法.
以下是我的代码目前的样子:
<div class="field">
<%= f.text_field :first_name, v-model="firstname" %>
</div>
Run Code Online (Sandbox Code Playgroud)
我非常感谢这里的任何想法.谢谢!