【问题标题】:How to return entire model from laravel in jquery ajax?如何在 jquery ajax 中从 laravel 返回整个模型?
【发布时间】:2018-01-05 10:23:57
【问题描述】:

我想通过选择表单组合框(例如 PHP 帖子)返回用户请求的帖子列表。 所以我想返回post_titlepost_body,我可以返回。 但我也想返回users 表中的user_name(帖子所有者)。

我在PostsUsers 之间创建了一对一的关系,假设单个用户只能发布一个帖子

我要退货了

return \App\Post::where('post_topic', 'PHP')->get();

而我的 jquery ajax 是

$( document ).ready(function() {

        $('#post_form').on('submit', function (e) {

            e.preventDefault();

            var post_topic = $('#post_select').val();

            $.ajax({
                type: "GET",
                url: '/test',
                data:{class: post_topic},
                dataType : 'json',
                success: function( data ) {

                    console.log(data);

                    var htmlText = '';

                    for ( var key in data ) {
                        htmlText += '<tr>';
                        htmlText += '<td class="">' + data[key].post_title + '</td>';
                        htmlText += '<td class="">' + data[key].post_body + '</td>';
                        htmlText += '<td class="">' + data[key].post_owner + '</td>';
                        htmlText += '</tr>';
                    }

                    $('#post_list').html(htmlText);
                }
            });
        });

    });

但这会使 user_name 未定义。

【问题讨论】:

    标签: php jquery ajax laravel-5


    【解决方案1】:

    在laravel中使用with获取关系数据,在此之前请检查你是否在eloquent中提供了正确的关系

    return \App\Post::where('post_topic', 'PHP')->get();
    

    而不是这个,它应该是 JSON 格式

    $posttopic = \App\Post::where('post_topic', 'PHP')->with('user')->get();
    
    reutrn Response()->json($posttopic, 200);
    

    200 是状态码,请记住包含响应门面

    【讨论】:

    • 它给出了这个错误:解析错误:语法错误,这一行上的意外'->' return Response->json($posttopic, 200);
    • 仍然在控制台它只返回帖子信息而不是用户信息
    • 您是否在模型中提供了正确的关系,请使用with检查并使用更新后的答案
    • 是的,现在可以了。只有一个问题是成功的状态 200?
    • @Raj 是的,200 代表成功。 restapitutorial.com/httpstatuscodes.htmlhttpstatuses.com
    猜你喜欢
    • 2011-02-04
    • 1970-01-01
    • 2015-12-05
    • 1970-01-01
    • 2018-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多