【发布时间】:2014-05-28 14:14:38
【问题描述】:
我还在学习 Laravel 以及刀片系统是如何工作的......
我想知道做某事的更好方法是什么?我已经完成了一个查询以从数据库中提取一行,然后我想将该查询放入一个数组中,这样我就可以挑选出我想要的任何列。
然后我想将它传递给我的 home.blade.php 并能够使用 {{ $name }} 例如。 T
这就是我所拥有的:
注意:这是按我想要的方式工作的,但我确定我在做很长的路(错误)。
HomeController.php
<?php
class HomeController extends BaseController {
public function home() {
$hero_query = DB::table('heros')->where('owner_id', Auth::user()->id)->pluck('hero');
if($hero_query) {
$owner_id = Auth::user()->id;
$user = DB::table('heros')->where('owner_id', $owner_id)->first();
$name = $user->hero;
$level = $user->level;
$exp = $user->exp;
$str = $user->str;
$atk = $user->atk;
$def = $user->def;
$int = $user->int;
$blk = $user->blk;
return View::make('home', array(
'name' => $name,
'level' => $level,
'exp' => $exp,
'str' => $str,
'atk' => $atk,
'def' => $def,
'int' => $int,
'blk' => $blk
));
} else {
return View::make('home');
}
}
}
home.blade.php
@if($hero = DB::table('heros')->where('owner_id', Auth::user()->id)->pluck('hero'))
<form action="{{ URL::route('hero-delete') }}" method="POST">
Your hero:<br>
<b>{{ $hero; }}</b> | <input type="submit" value="Delete"><br>
<b>Stats:</b>
LvL: {{ $level }}
Exp: {{ $exp }}
Str: {{ $str }}
Atk: {{ $atk }}
Def: {{ $def }}
Int: {{ $int }}
Blk: {{ $blk }}
</form>
@else
<form action="{{ URL::route('hero-create') }}" method="POST">
Hero:<br>
You do not have a hero, create one!
<input type="text" name="hero">
<input type="submit" value="Create hero">
@if($errors->has('hero'))
{{ $errors->first('hero')}}
@endif
{{ Form::token()}}
</form>
@endif
现在我确定我是在以某种愚蠢的方式做这件事,因为我刚刚开始......但是有人可以解释我哪里出错了吗?
提前致谢!
【问题讨论】:
标签: php laravel laravel-4 blade