【发布时间】:2014-04-10 20:04:06
【问题描述】:
我正在使用 Laravel。试图在下面计算出最佳转换。我会使用查询生成器还是 eloquent,我应该在哪里集成代码(视图、控制器、模型),这是我正常执行的方式:
HTML - 使用 /sweden 或 /stockholm 获取记录 - (.htaccess url)
<a href="retailers/country/sweden">Sweden</a>
<a href="retailers/city/stockholm">Stockholm</a>
PHP - 获取与这些记录相关的数据
if (isset($_GET['country']) || isset($_GET['city']))
{
$country = $_GET['country'];
$store = $_GET['city'];
$stmt = $db->prepare("SELECT * from table WHERE country = ? or city = ?");
$stmt->execute(array($country, $city));
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) :
//output stuff
endwhile
} else { //do something else }
这是我当前的 Laravel 模式的外观:
型号:
class DataListings extends Eloquent {
public $table ='database';
}
控制器:
public function data() {
return View::make('data')
->with('table', DataListings::all())
}
这是我的观点以及我如何假设我会将这些放在一起,这就是我感到困惑的地方。什么去哪里,if (isset() 是在我的控制器、模型还是视图中?我使用查询生成器还是 elequent?如果我能得到一个关于如何转换上述内容的例子,那就太好了。
@if
@foreach($table as $data) // this here is my while :
{{ $data->country }}, etc etc
@endforeach
@else
//do something else
@endif
谢谢
【问题讨论】:
-
不要使用
$_GET超全局变量,因为 Laravel 提供了访问请求参数的接口。使用Input::get('country');和Input::get('city');如果要检查它们是否已设置,请使用Input::has('country');laravel.com/docs/requests -
都是SELECT和查询,看我上面的例子。我只需要知道如何将上面的内容转换为 Laravel,你能给我一个例子吗,使用上面的模板等。
-
啊,我的错。我以为代码已经在 Laravel 中了。也就是说,如果你将它转换为 Laravel,最好使用
Input来访问 $_GET、$_POST、$_FILES 等中的值,所以我仍然推荐它;)
标签: php laravel laravel-4 eloquent blade