legend3---14、所有增删改的前置操作可以是什么

一、总结

一句话总结:

先查询数据有没有,这样既起到了服务端验证的功能,也避免了很多增删改可能的错误

1、用户收藏视频,收藏课程有必要建立用户收藏视频表和用户收藏课程表么(已经有了用户课程表和用户视频表的基础上)?

没有必要:比如说课程,因为已经有了用户课程表,那么用户和课程的所有逻辑都可以在这个表里面,而收藏也仅仅只是一种交互逻辑

2、视图共用模块注意?

让标识唯一就好,共用模块里面内部的元素可以不用太区分

3、页面中的js的注释,不要写用户可以通过网页源代码看到的注释?

不要用//和/**/,可以用{{--课程的点赞操作--}}

4、从数据表中获取单行或单个值?

单行:first():DB::table('users')->where('name', 'John')->first()
单个值:value('email'):DB::table('users')->where('name', 'John')->value('email')

如果你只需要从数据表中获取一行数据,你可以使用 first 方法。该方法返回一个 StdClass 对象:

$user = DB::table('users')->where('name', 'John')->first();

echo $user->name;
如果你甚至不需要整行数据,则可以使用 value 方法从记录中获取单个值。该方法将直接返回该字段的值:

$email = DB::table('users')->where('name', 'John')->value('email');

5、写了sql语句可以跑到数据库里面分析一下语句的效率?

explain语句:explain select count(*) as aggregate from `user_questions` where `uq_u_id` = 1 and `uq_collected` = 1

6、页面中ajax根据板块动态获取板块的数据如何实现?

初始的时候传空数据过来就好(不用查数据库),点到哪一个,那就ajax取哪一个的数据就好

7、SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'cl_u_id' in where clause is ambiguous (SQL:...)?

Integrity constraint violation:完整性约束违反
ambiguous:英 /æmˈbɪɡjuəs/:adj. 模糊不清的

8、php对数组去重?

array_unique()

9、lavarel中表自己连自己?

因为两个相同的表,所以要特别指定 要查找的字段到底是哪个里面的字段
$lesson_comments=CommentLesson::where('pid_comment_lessons.cl_u_id',$u_id)
->orderBy('cl_created_at','desc')->offset($offset)->limit($per_page_item_num)
->join('comment_lessons as pid_comment_lessons', 'comment_lessons.cl_pid', '=', 'pid_comment_lessons.cl_id')
->join('users', 'pid_comment_lessons.cl_u_id', '=', 'users.id')
->join('lessons', 'comment_lessons.cl_l_id', '=', 'lessons.l_id')
->select($select_field)->get();

10、查询用户的所有对课程的评论和回复(查询回复的话需要在where条件里面用join)?

union操作加上表自己连自己,根据不同的情况用不同的字段连user表
数据库里面加个to_u_id字段这样查询操作会变的简单一点
  $select_field=['comment_lessons.*','users.name','users.id','lessons.l_title','lessons.l_id'];
//1、这是所有我发的,我回复的或者我评论的:这里我并不需要知道自己的信息
$lesson_comments_active=CommentLesson::where('comment_lessons.cl_u_id',$u_id)
->join('comment_lessons as pid_comment_lessons', 'comment_lessons.cl_pid', '=', 'pid_comment_lessons.cl_id')
->join('users', 'pid_comment_lessons.cl_u_id', '=', 'users.id')
->join('lessons', 'comment_lessons.cl_l_id', '=', 'lessons.l_id')
->select($select_field); //2、这是所有回复我的,我需要知道用户的信息
$lesson_comments=CommentLesson::where('pid_comment_lessons.cl_u_id',$u_id)
->join('comment_lessons as pid_comment_lessons', 'comment_lessons.cl_pid', '=', 'pid_comment_lessons.cl_id')
->join('users', 'comment_lessons.cl_u_id', '=', 'users.id')
->join('lessons', 'comment_lessons.cl_l_id', '=', 'lessons.l_id')
->union($lesson_comments_active)
->orderBy('cl_created_at','desc')->offset($offset)->limit($per_page_item_num)
->select($select_field)->get();

11、videojs中实现过多长时间自动记录播放进度?

用一个定时器,如果视频在播放,定时器就开始走,过三分钟就ajax到服务器
如果暂停或者结束,也直接ajax到服务器,暂停清除定时器,再点开始的时候再重新启动定时器

12、前端页面可以都用vue,会简单方便特别多的?

相对于jquery+vue的ajax方式,vue的方式安全的多

13、Non-static method Illuminate\Database\Eloquent\Model::save() should not be called statically?

$userLesson::save() 改成 $userLesson->save() 即可

二、内容在总结中

 

legend3---14、所有增删改的前置操作可以是什么的更多相关文章

  1. JDBC增删改数据库的操作

    JDBC入门及简单增删改数据库的操作 一.JDBC的引入 1.JDBC的概念 JDBC:Java Database Connection,表示数据库连接(任何数据库都支持JDBC的连接),是一个独立于 ...

  2. mysql增删改查相关操作

    mysql增删改查相关操作 以前用mysql用的少,对于数据库相关的操作不熟悉,现在开始要接触数据库了,记录一下相关的基础操作吧. 1.数据库的授权操作 # mysql -u root -p Ente ...

  3. 使用DOM进行xml文档的crud(增删改查)操作<操作详解>

    很多朋友对DOM有感冒,这里我花了一些时间写了一个小小的教程,这个能看懂,会操作了,我相信基于DOM的其它API(如JDOM,DOM4J等)一般不会有什么问题. 后附java代码,也可以下载(可点击这 ...

  4. ssm 框架实现增删改查CRUD操作(Spring + SpringMVC + Mybatis 实现增删改查)

    ssm 框架实现增删改查 SpringBoot 项目整合 一.项目准备 1.1 ssm 框架环境搭建 1.2 项目结构图如下 1.3 数据表结构图如下 1.4 运行结果 二.项目实现 1. Emplo ...

  5. Java学习笔记——JDBC之与数据库MySQL的连接以及增删改查等操作

    必须的准备工作 一.MySQL的安装.可以参考博文: http://blog.csdn.net/jueblog/article/details/9499245 二.下载 jdbc 驱动.可以从在官网上 ...

  6. day42 字段的增删改查详细操作

    复习 # 1.表的详细操作 create table nt like ot; # 只复制表的结构包括约束 create table nt select * from ot where 1=2; # 复 ...

  7. MySQL常用增删改查等操作语句

    修改数据库的字符集    mysql>use mydb    mysql>alter database mydb character set utf8;创建数据库指定数据库的字符集    ...

  8. BaseDao代码,用于连接数据库实行增删改查等操作

    在学习JavaWeb时会用到此代码,用于实行增删改查操作 1 package com.bdqn.dao; import java.sql.Connection; import java.sql.Dri ...

  9. MySQL数据库学习笔记(八)----JDBC入门及简单增删改数据库的操作

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

随机推荐

  1. javamail "535 5.7.3 Authentication unsuccessful" 问题排查

    有一家odm的服务器用Javamail发邮件的时候报错  Authentication unsuccessful  其他的有些又是正常的 网上查了一下解决方法如下 JavaMailSenderImpl ...

  2. stm32 独立看门狗 IWDG

    独立看门狗IWDG 独立看门狗简单理解就是一个12位递减计数器,当计数器从某一个值递减到0时,系统就会产生一次复位 独立看门狗由专用低速时钟LSI驱动,其频率一般在30-60KHz之间,通常选择40K ...

  3. SAP应用真的不性感么

    这是一个问题. 上图的One Order是楼下一个部门领导让我给他的团队做的一个古老框架的session. 这个框架诞生于2000年,采用纯面向过程的思路开发.因为上世纪90年代ABAP开始引入对面向 ...

  4. SmartBinding实现DataSet与ListView的绑定及同步显示

    kbmMW 5.10.10发布了,这个版本解决了我提出的问题,当对DataSet增删记录时,ListView能够同步显示.下面看看具体的实现代码. 为了解决上面的问题,作者为IkbmMWBinding ...

  5. CLR ATL

    前段时间,帮人改了个项目,里面明明感觉是MFC,但是却调用C#的类函数,用的都是gcnew指针,凭借着对C#的熟悉,一点一点的实验,终于帮人把程序改好了,但是却不知道到底是什么东西,C#和MFC的混合 ...

  6. javascript中如何判断数组是数组

    if (!Array.isArray) { Array.isArray = function(arg) { return Object.prototype.toString.call(arg) === ...

  7. 接口自动化平台搭建(四),自动化项目Jenkins持续集成

    一.Jenkins的优点 1.传统网站部署流程   一般网站部署的流程 这边是完整流程而不是简化的流程 需求分析—原型设计—开发代码—内网部署-提交测试—确认上线—备份数据—外网更新-最终测试 ,如果 ...

  8. 解析.conf配置文件

    解析.conf配置文件 解析.conf配置文件 解析.conf配置文件

  9. Mybatis 动态SQL注解 in操作符的用法

    在SQL语法中如果我们想使用in的话直接可以像如下一样使用: ,,) ; ,,) ; 但是如果在MyBatis中的使用 in 操作符,像下面这样写的话,肯定会报错: @Update("upd ...

  10. Hibernate初探之单表映射——第二章:Hibernate进阶

    第二章:Hibernate进阶 1.hibernate.cfg.xml常用配置 2.session 简介 3.transaction简介 4.session详解 5.对象关系映射常用配置 1.hibe ...