【问题标题】:Passing parameter in Eloquent ORM inside a javascript function在 javascript 函数内的 Eloquent ORM 中传递参数
【发布时间】:2015-09-29 09:06:19
【问题描述】:

我有一个 Laravel 应用程序,我在其中使用 jQuery DataTables Master/Details 来显示一些额外的信息。我可以将数据显示到子行,但我希望它首先过滤,具体取决于所选的行。我要检索的信息不在我用来创建 DataTable 的原始数据源上。因此,我想将记录 ID 传递给我直接从 javascript 使用的新查询。代码如下:

function kpi_values(d) {
    // `d` is the original data object for the row
    var $id = d.id;
    return '<table>'+
                '<thead>'+
                    '<tr>'+
                        '<th>Month</th>'+
                        '<th>Value</th>'+
                        '<th>Comment</th>'+
                    '</tr>'+
                '</thead>'+
                '<tbody>'+
                    '@foreach( \App\Reports::with("kpi")
                                            ->where("kpi_id",'+$id+')'+ 
                                            //this gives no records
                                            //->where("kpi_id",$id) -> this gives an error
                                            '->orderBy("month","desc")
                                            ->take(5)
                                            ->get() as $report)'+
                    '<tr>'+
                        '<td>{{$report->month}}</td>'+
                        '<td>{{$report->value}}</td>'+
                        '<td>{{$report->comment}}</td>'+
                    '</tr>'+
                    '@endforeach'+
                '<tbody>'+
            '</table>'
}

我收到的错误是:

ErrorException in e09c19f3dff5443f7b05b7c3c3e2f2a2 line 66:
Undefined variable: id

编辑 1 我刚刚意识到 var $id 不是 php 变量,因此它不会那样工作。所以我更新了我的代码,将var $id = d.id 替换为&lt;?php $id = /*the problem*/ ?&gt;

但是我不能将 d.id 作为值传递给该变量。

【问题讨论】:

    标签: javascript php laravel eloquent laravel-5


    【解决方案1】:

    我认为你不能像这样从 javascript 到 PHP 获取 id。因为 PHP 渲染您的脚本并将其与 HTML 一起发送到浏览器。

    你应该为每一行编写ajax调用或在渲染成HTML之前准备数据

    【讨论】:

      【解决方案2】:

      这不会按您希望的方式工作。你最好用你的original approach。如果您在上一个问题上发布您的数据库结构,我可以看看它。

      【讨论】:

        猜你喜欢
        • 2012-12-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-19
        • 2013-10-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多