0
我想允許用戶更新他們的個人資料頁面上創建的,但是我得到一個錯誤信息說我試圖嘗試給非對象的屬性非對象的屬性:Laravel嘗試分配
但是用戶和twitter確實有價值。
在數據庫字段中被稱爲twitter_personal,當然id是一個id。
控制器:
function updateProfile(Request $request) {
$user = Auth::id();
$twitter = $request->input('twitter');
$user->twitter_personal = $twitter;
$user->save();
if($user->save()) {
$message = 'Success';
}else{
$message = 'Error';
}
return redirect()->back()->withInput()->with('message', $message);
}
形式:
<form class="form-horizontal" role="form" method="POST" action="{{ action('[email protected]') }}">
{{ csrf_field() }}
<div class="form-group{{ $errors->has('url') ? ' has-error' : '' }}">
<label for="twitter" class="col-md-4 control-label">Twitter</label>
<div class="col-md-6">
<input id="twitter" type="text" class="form-control" name="twitter">
@if ($errors->has('url'))
<span class="help-block">
<strong>{{ $errors->first('url') }}</strong>
</span>
@endif
</div>
</div>
所以這裏的問題,我該怎麼解決呢?有沒有更好的方法呢?如果是的話請舉個例子!
'$ user'是'Auth :: id()',它是一個id。它應該是'Auth :: user()' – apokryfos
true,工作正常。這個功能是不錯的做法嗎?或者使用其他方法可以更好地完成//編輯將其作爲答案,因此我可以標記它 – Przemek
有些人認爲使用外牆不是好習慣。我認爲laravel很好。如果你想避免使用'Auth'外觀,你可以這樣做:'$ request-> user()'而不是 – apokryfos