mysql - Laravel 4 Eloquent + 原始查询返回 NULL

标签 mysql laravel laravel-4 eloquent

如果在我的 Place 模型中有这种关系:

public function openhours()
{
  return $this->hasOne('Hours')->select(DB::raw("IF(CURTIME() BETWEEN open_time AND close_time ,'Open','Closed')"));
}

在我的 route :

 $place = Place::with('openhours')->where('id', '=', 5)->get();

我的 table :

Table Name : hours
Fields : 
id          int(11)
place_id    int(11)
open_time   time
close_time  time

表记录:

id: 1
place_id: 5
open_time: 10:00:00
close_time: 17:00:00

它只是返回:

 openhours:null

当我在 phpmyadmin 中手动运行此查询时,它工作正常。

我做错了什么?

提前致谢。

最佳答案

将以下内容添加到您的 App:before 过滤器中,您将获得所有正在执行的查询和绑定(bind)的转储。

DB::listen(function($sql, $bindings, $time)
{
    var_dump($sql);
    var_dump($bindings);
});

不是答案,但它可能会帮助您了解 Eloquent 请求与您自己的 SQL 的比较。

关于mysql - Laravel 4 Eloquent + 原始查询返回 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18908729/

相关文章:

mysql - 保存字体和颜色(delphi)

php - Laravel 5 在选择查询中选择

php - Laravel - 在查询生成器中访问模型值

php - Laravel wherebetween 不接受负数

php - 通过数据透视表进行 Eloquent or 查询

php - 如何在 Laravel 中组合带有各种可选参数的查询?

asp.net - 使用 ODBC 3.51 将 ASP Visual Web Developer 2008 连接到 MySQL

mysql - mysql中的验证规则?

php - Artisan 控制台命令在 5.1 中不起作用

php - 按特殊关系排序查询并分页