小编Cha*_*les的帖子

从Laravel上的数据库中检索所有父/子记录(分层数据)

对于类似遗留票证的系统,我有以下简化的数据库表结构.

messages
  id         INT
  parent_id  INT
  content    TEXT
  answer     TEXT
  ...
Run Code Online (Sandbox Code Playgroud)

在列表中,我显示所有消息.单击消息时,我会显示其答案等.

问题是:现在我需要所有的表结构的父母孩子的关系到这条消息,以及这个消息在树中的位置.我怎样才能从数据库中检索它们?

我正在使用Laravel,但原始SQL也可以帮助我找到方向.


例:

?????????????????????????????????????????????????????????????
? id ? parent_id ?        content         ?     answer      ?
?????????????????????????????????????????????????????????????
?  1 ? NULL      ? Hi, I have a problem   ? I can't help    ?
?  2 ? 1         ? The problem persists   ? Ok, what is it? ?
?  3 ? 2         ? Nevermind, I got this  ? Oh, well.       ?
?  4 ? 3         ? Problem is …

php mysql hierarchy hierarchical-data laravel

7
推荐指数
1
解决办法
3550
查看次数

Angular $ q.reject().success(),这有意义吗?

我正在读一本名为MEAN Machine的书,当我进入后期章节时,我已经陷入其中一个示例应用程序,这似乎不起作用.

问题似乎发生,因为我的mainController调用authServiceAuth.getUser()方法,它可能返回a $http.get()或a $q.reject().由于我没有登录,它会返回$q.reject(),并且无法链接.success()承诺.

它抛出以下异常:

TypeError:undefined不是mainCtrl.js中的函数:13

我的代码如下.


CONTROLLER
mainController

angular.module('mainCtrl', [])
    .controller('mainController', function($rootScope, $location, Auth) {
        var vm = this;

        // check to see if a user is logged in on every request
        $rootScope.$on('$routeChangeStart', function () {
            vm.loggedIn = Auth.isLoggedIn();

            // get user information on route change
            Auth.getUser()

                /* ========= PROBLEM HERE ========= */
                .success(function (data) {
                    vm.user = data;
                });
        });

        // ... other …
Run Code Online (Sandbox Code Playgroud)

javascript promise angularjs angular-promise

6
推荐指数
1
解决办法
556
查看次数