【发布时间】:2014-01-18 20:00:55
【问题描述】:
回复,
我有以下疑问:
$property =
Property::select(
DB::raw("title, lat, lng, (
3959 * acos(
cos( radians(:lat) ) *
cos( radians( lat ) ) *
cos( radians( lng ) - radians(:lng) ) +
sin( radians(:lat) ) *
sin( radians( lat ) )
)
) AS distance", ["lat" => $lat, "lng" => $lng, "lat" => $lat])
)
->having("distance", "<", $radius)
->orderBy("distance")
->take(20)
->get();
它不起作用:Invalid parameter number: mixed named and positional parameters。
有谁知道技巧或解决方法(我显然可以编写完整的查询,但更喜欢使用流利的构建器)。
【问题讨论】:
-
愚蠢的问题-但文档在其任何示例中都没有使用
" "。你试过单身吗? -
@JamesBinford 是的,尝试了所有可能的组合,包括
%s -
您有 2 个
:lat在查询中,但只绑定了 1 个 -
@davidstrachan 似乎没有任何区别。
-
模型并不存在。您的意思是“在实例上使用”。模型只是一个空白模板。在 Laravel 世界中,每个人都使用了错误的术语,“模型”的意思是“实例”。
标签: php mysql pdo laravel laravel-4