我一直在寻找谷歌和堆栈溢出,但我找不到有这个问题的人。据我所知,我不能使用 Blade 变量 {{ $likethis }} 或者我正在创建的布局中出现渲染问题。除了双括号变量之外的所有内容都适用于布局等。这是一些代码:
传递的变量是'title'。
<?php
class Add_Controller extends Base_Controller {
public $restful = true;
public function get_recipe(){
return View::make('add.recipe', array('title' => 'Add A Recipe'));
// I've also tried with() and others.
}
}
布局:
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>{{ $title }}</title>
<link rel="stylesheet" href="{{ URL::to('css/style.css') }}">
<link href='http://fonts.googleapis.com/css?family=Libre+Baskerville|Domine|Donegal+One' rel='stylesheet' type='text/css'>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="{{ URL::to('js/functions.js') }}"></script>
</head>
<body>
@yield('content')
</body>
</html>
食谱页面:
@layout('layouts.default')
@section('content')
<div id="wrapper">
<header><div id="icon"></div></header>
<div id="create">
<div class="inline">
<input type="text" id="title" name="title" value="Title">
</div>
<div>
<label for="serving">Servings</label>
<input type="text" name="serving" id="serving" value="2">
</div>
<div id="ingredients">
<div class="ingredient">
<div class="inline">
<input type="text" class="name" name="name" value="Ingredient">
</div>
<div class="inline">
<input type="text" class="amt" name="amount" value="0">
</div>
<div class="inline">
<select name="unit" class="unit">
<option value="lb">Pounds</option>
<option value="oz">Ounces</option>
</select>
</div>
<div class="inline">
<div class="add-ingr">+</div>
</div>
</div>
</div>
<input type="button" id="create" name="create" value="Create">
</div>
</div>
@endsection
我得到的错误:
Unhandled Exception
Message:
Error rendering view: [layouts.default]
Undefined variable: title
Location:
/home/daevskii/public_html/websites/sbr/storage/views/9e4501d6d0479b217301c46cfb8cbcfd on line 5
Stack Trace:
#0 /home/daevskii/public_html/websites/sbr/laravel/laravel.php(42): Laravel\Error::native(8, 'Undefined varia...', '/home/daevskii/...', 5)
#1 /home/daevskii/public_html/websites/sbr/laravel/view.php(386) : eval()'d code(5): Laravel\{closure}(8, 'Undefined varia...', '/home/daevskii/...', 5, Array)
#2 /home/daevskii/public_html/websites/sbr/laravel/view.php(386): eval()
#3 /home/daevskii/public_html/websites/sbr/laravel/blade.php(71): Laravel\View->get()
#4 [internal function]: Laravel\{closure}(Object(Laravel\View))
#5 /home/daevskii/public_html/websites/sbr/laravel/event.php(199): call_user_func_array(Object(Closure), Array)
#6 /home/daevskii/public_html/websites/sbr/laravel/event.php(138): Laravel\Event::fire('laravel.view.en...', Array, true)
#7 /home/daevskii/public_html/websites/sbr/laravel/view.php(348): Laravel\Event::until('laravel.view.en...', Array)
#8 /home/daevskii/public_html/websites/sbr/laravel/view.php(386) : eval()'d code(36): Laravel\View->render()
#9 /home/daevskii/public_html/websites/sbr/laravel/view.php(386): eval()
#10 /home/daevskii/public_html/websites/sbr/laravel/blade.php(71): Laravel\View->get()
#11 [internal function]: Laravel\{closure}(Object(Laravel\View))
#12 /home/daevskii/public_html/websites/sbr/laravel/event.php(199): call_user_func_array(Object(Closure), Array)
#13 /home/daevskii/public_html/websites/sbr/laravel/event.php(138): Laravel\Event::fire('laravel.view.en...', Array, true)
#14 /home/daevskii/public_html/websites/sbr/laravel/view.php(348): Laravel\Event::until('laravel.view.en...', Array)
#15 /home/daevskii/public_html/websites/sbr/laravel/view.php(590): Laravel\View->render()
#16 /home/daevskii/public_html/websites/sbr/laravel/response.php(246): Laravel\View->__toString()
#17 /home/daevskii/public_html/websites/sbr/laravel/laravel.php(180): Laravel\Response->render()
#18 /home/daevskii/public_html/websites/sbr/public/index.php(34): require('/home/daevskii/...')
#19 {main}
* @package Laravel * @version 3.2.12
如果我取出 {{ $title }},我不会出错......但是我也没有使用变量:-\ 提前谢谢!
[ANSWER] 我有一个路由问题没有在这里发布,但答案在我发的这个 laravel 论坛帖子中:http ://forums.laravel.com/viewtopic.php?pid=23383#p23383