这是我的代码
var feetype="{{App\StudentFee::where('id', '2')->value('student_fee_type')}}";
console.log(feetype);
工作正常。 但是,当我尝试像这样修改它时
var fee_type_id = 2;
var feetype="{{App\StudentFee::where('id', fee_type_id)->value('student_fee_type')}}";
console.log(feetype);
它引发以下错误
Use of undefined constant fee_type_id - assumed 'fee_type_id' (this will throw an Error in a future version of PHP)
我在做什么错了?
答案 0 :(得分:0)
PHP
在服务器端运行。
完成后,将其生成的内容下载到使用javascript
因此服务器上的PHP
将无法访问您的javascript变量。
有一些变通办法可以给PHP
使用变量。
在这里,您可以找到此https://laravel.com/docs/5.8/routing#required-parameters的示例。
例如,您可以将此内容附加到路由/{fee_type_id}
上,并在请求的网址末尾传递变量。您可以在其中添加代码
var feetype="{{App\StudentFee::where('id', $fee_type_id)->value('student_fee_type')}}";
提供了将变量传递到所需位置的地方。
我希望这对您有用。
答案 1 :(得分:0)
您没有在引号中转义短语fee_type_id
,因此它用作常量,但该常量未定义。您可能打算传递变量$fee_type_id
。
但是,实际上,您应该将所需的内容传递到刀片视图中,而不是在视图中执行雄辩的模型数据库查询。