到今天为止,我还不熟悉laravel(实际上是任何PHP框架),但对PHP并不陌生。我创建了第一个项目,并使用预构建的Auth系统登录。我创建了一个名为AccountSettings的新路由、控制器和模型,因此当我转到/account时,它会预先填充登录的用户帐户信息(名称和电子邮件)
路由::获取(’account’,’[email protected]‘);
路线::post(’帐户’,’[email protected]‘);
当我点击表单上的提交按钮时,我可以看到我发布的表单数据(姓名、电子邮件和_令牌)
我的帐户设置控制器是:
<;?php名称空间App\Http\Controllers;
使用App\Http\Controllers\Controller;
使用App\AccountSettings;
使用输入;
使用请求;
使用Auth;
类AccountSettingsController扩展控制器{
/**
*显示资源的列表。
*
*@返回响应
*/
公共职能指数()
{
返回视图(“帐户设置/索引”);
}
公共函数updateAccount()
{
var_dump(输入::all());
返回视图(“帐户设置/索引”);
}
}
我已尝试通过以下方式保存用户信息:
公共函数updateAccount()
{
$id=Auth::user()->;id;
$user=user::find($id);
$user->;name=Request::input('name');
$user->;email=Request::input('email');
$user->;save();
返回视图(“帐户设置/索引”);
}
但会导致一个错误,即找不到用户。可以理解,因为它不在我的中,请在顶部使用。我尝试了使用User,但没有成功
另一件事,这类东西应该在模型中处理,对吗?我已经花了好几个小时试图弄明白这一点,但我搜索的任何东西都与此无关。有人能给我指出正确的方向吗
在Laravel5中,您需要使用App\User文件顶部,而不是使用用户(而且绝对不能使用用户;)。User模型位于App命名空间中
旁注:这是不必要的:
$id=Auth::user()->;身份证件
$user=user::find($id);
只要做:
$user=Auth::user();
并从中获得更清晰的代码和更少的数据库查询