后台获取数据关联表-数据结构-嵌套页面

来源:互联网 发布:网络暴力有哪方面影响 编辑:程序博客网 时间:2024/06/05 07:20
后台获取数据关联知识点 


关联关系图
watchRecordModel 课程观看记录表:                                                                          课程观看记录Model:                                                       
                        
courseModel  课程表                                                                                                    课程Model
  
课程——期——章节关联表                                                                                          期——章节Model:
       
课时表                                                                                                                                课时Model:                                                                                                      
        


以下是获取后台的code
/**
     * 获取个人进度详情信息(Vip)
     *
     */


    public function getVipCourses(){

        $page = post('page',1);
        // trace_log(111);exit;
        $userId = $this->formatParam();
        if(!empty($userId)){
            $courseIds = WatchRecordModel::where('user_id',$userId)->distinct()->lists('course_id');
            // trace_log($courseIds);exit;
            if(!empty($courseIds)){
                $courses = Course::where('type_id',2)->where('status',2)->whereIn('id',$courseIds)
                        ->with('period.units.lessons.watchrecord')
                        ->get()
                        ->toArray();
                // trace_log($courses);exit;
                return $courses;
            }

        }   
        return  '0';
    }


数据结构:仅供参考


[2016-10-27 15:42:56] production.INFO: Array
(
    [0] => Array
        (
            [id] => 60
            [name] => 设计师超值VIP课程6
            [level_id] => 1
            [type_id] => 2
            [category_id] => 3
            [is_direct_broadcast] => 0
            [introduction] => <p>设计师超值VIP课程4</p>
            [description] =>
            [package_detail] => <p>11</p>
            [course_special_topic] => <p>11</p>
            [price] => 0.00
            [discount_price] => 0.00
            [status] => 2
            [sequence] => 0
            [keywords] => 设计
            [creator_id] => 1
            [base_number] => 0
            [created_at] => 2016-09-29 17:27:57
            [updated_at] => 2016-10-11 09:32:50
            [period] => Array
                (
                    [0] => Array
                        (
                            [id] => 67
                            [name] => 课程进度期
                            [type] => 1
                            [parent_id] => 0
                            [sequence] => 1
                            [course_id] => 60
                            [created_at] => 2016-10-12 09:35:44
                            [updated_at] => 2016-10-12 09:35:44
                            [status] => 1
                            [units] => Array
                                (
                                    [0] => Array
                                        (
                                            [id] => 68
                                            [name] => 课程进度章节
                                            [type] => 2
                                            [parent_id] => 67
                                            [sequence] => 1
                                            [course_id] => 60
                                            [created_at] => 2016-10-12 09:35:49
                                            [updated_at] => 2016-10-12 09:35:49
                                            [status] => 1
                                            [lessons] => Array
                                                (
                                                    [0] => Array
                                                        (
                                                            [id] => 48
                                                            [course_id] => 60
                                                            [course_unit_id] => 68
                                                            [title] => 课程进度课时
                                                            [status] => 1
                                                            [start_time] => 2016-10-13 00:00:00
                                                            [end_time] => 2016-10-21 00:00:00
                                                            [class_period] => 0
                                                            [created_at] => 2016-10-12 09:36:00
                                                            [updated_at] => 2016-10-12 09:36:00
                                                            [sequence] => 1
                                                            [watchrecord] => Array
                                                                (
                                                                    [0] => Array
                                                                        (
                                                                            [id] => 1
                                                                            [user_id] => 1
                                                                            [lesson_id] => 48
                                                                            [course_id] => 60
                                                                            [address] => 120.52.24.68
                                                                            [browser] => 1
                                                                            [client] => 1
                                                                            [end_time] => 2016-10-12 00:00:00
                                                                            [schedule] => 30
                                                                            [watch_time] => 2
                                                                            [exception_record] => 异常记录
                                                                            [created_at] => 2016-10-08 00:00:00
                                                                            [updated_at] =>
                                                                        )

                                                                    [1] => Array
                                                                        (
                                                                            [id] => 2
                                                                            [user_id] => 1
                                                                            [lesson_id] => 48
                                                                            [course_id] => 60
                                                                            [address] => 120.52.24.68
                                                                            [browser] => 2
                                                                            [client] => 2
                                                                            [end_time] => 2016-10-12 00:00:00
                                                                            [schedule] => 60
                                                                            [watch_time] => 2
                                                                            [exception_record] =>
                                                                            [created_at] => 2016-10-08 00:00:00
                                                                            [updated_at] =>
                                                                        )

                                                                )

                                                        )

                                                )

                                        )

                                )

                        )

                    [1] => Array
                        (
                            [id] => 69
                            [name] => 2017
                            [type] => 1
                            [parent_id] => 0
                            [sequence] => 2
                            [course_id] => 60
                            [created_at] => 2016-10-27 10:13:01
                            [updated_at] => 2016-10-27 10:13:01
                            [status] => 0
                            [units] => Array
                                (
                                )

                        )

                )

        )

    [1] => Array
        (
            [id] => 62
            [name] => 课程vip_cjl
            [level_id] => 1
            [type_id] => 2
            [category_id] => 3
            [is_direct_broadcast] => 0
            [introduction] => 1
            [description] =>
            [package_detail] =>
            [course_special_topic] =>
            [price] => 0.00
            [discount_price] => 0.00
            [status] => 2
            [sequence] => 0
            [keywords] =>
            [creator_id] => 0
            [base_number] => 0
            [created_at] =>
            [updated_at] =>
            [period] => Array
                (
                    [0] => Array
                        (
                            [id] => 72
                            [name] => 课程vip——cjl
                            [type] => 1
                            [parent_id] => 0
                            [sequence] => 1
                            [course_id] => 62
                            [created_at] =>
                            [updated_at] =>
                            [status] => 0
                            [units] => Array
                                (
                                    [0] => Array
                                        (
                                            [id] => 73
                                            [name] => 课程vip——章节
                                            [type] => 2
                                            [parent_id] => 72
                                            [sequence] => 1
                                            [course_id] => 62
                                            [created_at] =>
                                            [updated_at] =>
                                            [status] => 0
                                            [lessons] => Array
                                                (
                                                    [0] => Array
                                                        (
                                                            [id] => 50
                                                            [course_id] => 62
                                                            [course_unit_id] => 73
                                                            [title] => 课程进度vip
                                                            [status] => 1
                                                            [start_time] =>
                                                            [end_time] =>
                                                            [class_period] => 0
                                                            [created_at] =>
                                                            [updated_at] =>
                                                            [sequence] => 1
                                                            [watchrecord] => Array
                                                                (
                                                                    [0] => Array
                                                                        (
                                                                            [id] => 4
                                                                            [user_id] => 1
                                                                            [lesson_id] => 50
                                                                            [course_id] => 62
                                                                            [address] => 120.52.24.68
                                                                            [browser] => 1
                                                                            [client] => 2
                                                                            [end_time] => 2016-10-12 00:00:00
                                                                            [schedule] => 30
                                                                            [watch_time] => 2
                                                                            [exception_record] =>
                                                                            [created_at] => 2016-10-08 00:00:00
                                                                            [updated_at] =>
                                                                        )

                                                                )

                                                        )

                                                )

                                        )

                                )

                        )

                )

        )

)


关于嵌套页面的code,在我这篇blog有记载:http://blog.csdn.net/chajinglong/article/details/52598761  中的第五部分。


0 0
原创粉丝点击