【发布时间】:2015-06-17 11:10:09
【问题描述】:
所以我有以下刀片文件:
confirmEmail.blade.php
@extends('layouts.master')
@section('title')
{{ trans('tc.signUpConfirmTitle')}}
@endsection
@section('body')
<div class="container">
<div class="row">
<div class="col-lg-4">
</div>
<div class="col-lg-4">
<?php
echo $_GET['emailToken'];
$emailToken = isset($_GET['emailToken']) ? $_GET['emailToken'] : "";
$email = isset($_GET['email']) ? $_GET['email'] : "";
//database lookup:
$user = User::where('email','=',$email)->first(); //this fails...
if($user->emailToken == $emailToken){
echo "OK!";
}
?>
<br><br><br><br><br><br>
</div>
<div class="col-lg-4">
</div>
</div>
</div>
@endsection
如您所见,<?php ?> 标记之间有一些原始 PHP。问题是 User::where(...) 失败(“FatalErrorException” - 未找到“用户”类)。
我猜这是因为我需要做一些 Laravel 导入?但是这样做是轻量级的吗?
我能问一下,在我的情况下,最佳做法是什么?我对 Laravel 还是很陌生,所以请耐心等待。像这样使用原始 PHP 是否违背了整个目的?
到目前为止,我一直在使用 Blade 模板来输出简单的变量和参数。但是我现在想做一些更复杂的事情,我遇到了麻烦。
【问题讨论】:
-
大家好,我想我明白了...如果我使用
\App\User::where('email','=',$email)->first(),它可以正常工作... -
为什么要在刀片文件中执行所有这些逻辑?
-
将 php 放在模板上没有任何问题,但您直接使用 $_GET .. 不是 laravel 方式。这在视图中的语法太多了:(
-
嗨@KhanShahrukh 你能多评论一些吗?我想我应该从我的控制器类中传入一个简单的变量,对吧?
标签: php laravel laravel-5 blade