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. echarts重写图例点击事件

    echarts version: 3.1.2 修改图例点击事件样例代码: 当第一次点击图例时,只显示点击的图例. 当还剩一个图例被取消选中后,自动全选中所有图例. var triggerAction ...

  2. Axure工作区间

    Axure的工作环境可进行可视化拖拉操作,可轻松快速的创建带有注释的线框图.无需编程就可以在线框图中定义简单链接和高级交互.Axure可一体化生成线框图.HTML交互原型.规格说明Word文档.以下是 ...

  3. SOAP与restful webservice

    SOAP 什么是SOAP,我想不用多说,google一把满眼都是.其实SOAP最早是针对RPC的一种解决方案,简单对象访问协议,很轻量,同时作为应用协议可以基于多种传输协议来传递消息(Http,SMT ...

  4. Spring Boot笔记

    @SpringBootApplication中有以下注解:@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Document ...

  5. golang使用ssh远程连接服务器并执行命令

    安装golang.org/x 直接去github上面,把https://github.com/zieckey/golang.org,把整个目录拷贝下来放到你的gopath下面即可.记住在gopath的 ...

  6. 访问mapper方法提示invalid bound statement (not found)原因总结

    1.访问所有的mapper都报此错误,检查 mapper.xml 中的 namespace 2.访问mapper中的部分方法时报此错误,检查xml文件中的id是否和接口中的方法名一致 3.mapper ...

  7. 数据库连接池,DBUtil的模板,dbcp,c3p0

    数据库连接池,DBUtil的模板,Druid使用(重点) 一.DBUtil模板 public class DBUtilTest { public static Connection connectio ...

  8. java之rpc/orm

    Netty线程模型 其中ChannelPiepline的设计模型采用的是Handler组成的责任链模型 blocking I/O 阻塞nonblocking I/O 非阻塞I/O multiplexi ...

  9. MongoDB C#samus驱动

    MongoDB的c#驱动有两种,官方驱动和samus驱动,不过我更喜欢samus驱动,因为samus驱动提供了丰富的linq操作. 官方驱动:https://github.com/mongodb/mo ...

  10. [唐胡璐]Selenium技巧 - 定制元素属性检查,并写到ReportNG中

    QTP 和Selenium 都会有这种要检查某一个控件元素属性的情况,比如去检查一个Button的显示文字是什么? 为了更方便的书写程序,并优美的显示到HTML测试报告中,做了以下几个小小的封装,只是 ...