Laravel:刀片文件中内联PHP的最佳实践
因此,我有以下刀片文件: confirmEmail.blade.php 如您所见,我在标记之间有一些原始PHP。问题是User::where。。。FatalErrorException失败-找不到类“User” 我想这是因为我需要做一些Laravel导入?但这样做是不是很轻 我能问一下,在我的情况下,最好的做法是什么吗?我对拉威尔还是很陌生,所以请容忍我。像这样使用原始PHP会破坏整个目的吗Laravel:刀片文件中内联PHP的最佳实践,php,laravel,laravel-5,blade,Php,Laravel,Laravel 5,Blade,因此,我有以下刀片文件: confirmEmail.blade.php 如您所见,我在标记之间有一些原始PHP。问题是User::where。。。FatalErrorException失败-找不到类“User” 我想这是因为我需要做一些Laravel导入?但这样做是不是很轻 我能问一下,在我的情况下,最好的做法是什么吗?我对拉威尔还是很陌生,所以请容忍我。像这样使用原始PHP会破坏整个目的吗 到目前为止,我一直在使用刀片模板来输出简单的变量和参数。但是我现在想做一些更复杂的事情,我遇到了麻烦。像
到目前为止,我一直在使用刀片模板来输出简单的变量和参数。但是我现在想做一些更复杂的事情,我遇到了麻烦。像这样使用原始PHP会破坏整个目的吗? 确切地MVC是为了使不同类型的作业模型、视图和控制器有不同的层,在您的情况下,您将控制器的作业合并到视图中,因此减少了控制器的角色 控制器中的以下代码将执行您尝试执行的操作。假设您有一个名为confirmation的函数,负责所有验证并相应地返回响应
public function confirmation(Request $request)
{
$status = 'Failure';
$emailToken = $request->emailToken;
$email = $request->email;
if(isset($email))
{
$user = User::where('email','=',$email)->first();
//I do not know why this fails on your side check if you have that email in your database
if($user->emailToken == $emailToken)
{
$status = 'Success';
}
}
return view('confirmEmail')->with('message', $status);
}
您不应该将确认键添加到users表中,但是它是您的db表,您可以在任何地方插入任何内容,但我的建议是您应该为此创建一个单独的表。这样使用原始PHP是否会破坏整个目的? 确切地MVC是为了使不同类型的作业模型、视图和控制器有不同的层,在您的情况下,您将控制器的作业合并到视图中,因此减少了控制器的角色 控制器中的以下代码将执行您尝试执行的操作。假设您有一个名为confirmation的函数,负责所有验证并相应地返回响应
public function confirmation(Request $request)
{
$status = 'Failure';
$emailToken = $request->emailToken;
$email = $request->email;
if(isset($email))
{
$user = User::where('email','=',$email)->first();
//I do not know why this fails on your side check if you have that email in your database
if($user->emailToken == $emailToken)
{
$status = 'Success';
}
}
return view('confirmEmail')->with('message', $status);
}
您不应该将确认键添加到用户表中,但这是您的db表,您可以在任何地方插入任何内容,但我的建议是您应该为此创建一个单独的表。各位,我想我已经解决了。。。如果我使用\App\User::where'email'、'='、$email->first,它工作得很好…为什么要在刀片文件中执行所有这些逻辑?将php放在模板上没有什么错,但您使用的是$\u GET directly。。不是拉威尔。在一个视图中,这是太多的语法了:嗨@KhanShahrukh,你能再评论一下吗。我想我应该从我的控制器类中传入一个简单的变量,对吗?嗨,伙计们,我想我知道了。。。如果我使用\App\User::where'email'、'='、$email->first,它工作得很好…为什么要在刀片文件中执行所有这些逻辑?将php放在模板上没有什么错,但您使用的是$\u GET directly。。不是拉威尔。在一个视图中,这是太多的语法了:嗨@KhanShahrukh,你能再评论一下吗。我想我应该从我的控制器类传入一个简单的变量,对吗?您好。非常有用的评论。我已经学会了MVC,仍然习惯于拉威尔,并试图强迫自己重新学习我习惯的做事方式。我想我老了…你看过杰弗里·韦的视频吗?如果不在Google上搜索laracasts hey@Eamorr很抱歉有不相关的评论,但你的MVC学习进展如何?你好。非常有用的评论。我已经学会了MVC,仍然习惯于拉威尔,并试图强迫自己重新学习我习惯的做事方式。我想我老了…你看过杰弗里·韦的视频吗?如果不在Google上搜索laracasts嘿@Eamorr很抱歉有不相关的评论,但你的MVC学习进展如何?