大家好>
我遇到了一个特殊的问题。以下代码是我的控制器功能
public function populateIndustry(Request $request) {
if($request->isMethod('post')) {
$var = "Post Method";
} else {
$in_id = $request->industry_id;
//$var = $request->industry_id;
$var = IndustryAction::where('industry_id',$request->industry_id)->toSql();
}
return response()->json($var);
}
这是我的jQuery代码:
$(".edit_industry").click(function(e){
$.ajax({
url: "populateIndustry",
type: "get",
data: {
'_token':$('input[name=_token]').val(),
'industry_id':$(this).data('id'),
},
success: function(data) {
console.log(data);
},
error: function(data) {
console.log(data);
}
});
});
因为您可以看到我正在尝试检查查询,但我发现此查询中未填充industry_id
字段:
select * from `industries` where `industry_id` = ?
然而在这行代码中,我发现返回了正确的id
//$var = $request->industry_id;
任何人都可以指出我的错误吗?
答案 0 :(得分:1)
你试过这个吗?
$var = IndustryAction::where('industry_id',$request->industry_id)->get();
你有一些错误吗?你检查过拼写错误了吗?
答案 1 :(得分:1)
如果你知道查询格式,也许你可以这样做:
$query = IndustryAction::where('industry_id',$request->industry_id);
$stub_sql = $query->toSql();
$values = $query->getBindings();
$var = str_replace( '?', $values[0], $stub_sql );
答案 2 :(得分:1)
你可以这样做..
启用查询日志,然后
//enable the log first
\Illuminate\Support\Facades\DB::enableQueryLog();
$var = IndustryAction::where('industry_id',$request->industry_id)->get();
return \Illuminate\Support\Facades\DB::getQueryLog();
你将使用像
这样的绑定来获取jsonquery: "select * from `industry_action` where `id` = ?"
bindings:
0: 12
time: 0.62
“12”是你的身份