legend3---6、legend3爬坑杂记

一、总结

一句话总结:

学东西不做项目也学不到深处,其实也就是学了没理解透,

1、lavarel中模型关联可以用的实质是?

lavarel在数据库中插入数据之后,还从数据库返回了插入的那条数据,所以有我们需要的数据插入的id
$lesson['l_title']=$request['l_title'];
$lesson['l_introduce']=$request['l_introduce'];
$lesson['l_preview']=$request['l_preview'];
$lesson['l_is_commend']=$request['l_is_commend'];
$lesson['l_is_hot']=$request['l_is_hot'];
$lesson['l_click']=$request['l_click'];
$lesson->save();
//dd($lesson['l_id']);
dd($lesson->toArray());结果
array:9 [▼"l_title" => "aa""l_introduce" => "aa""l_preview" => "/images/nopic.jpg""l_is_commend" => "0""l_is_hot" => "0""l_click" => "0""updated_at" => "2019-09-28 14:04:26""created_at" => "2019-09-28 14:04:26""l_id" => 21
]

2、lavarel中模型关联最大的作用是什么?

精简代码,加快开发效率

3、lavarel中的模型中的create方法的作用是什么?

批量赋值,默认情况下使用模型插入数据的时候只能一个一个的赋值
批量赋值
你也可以使用 create 方法来保存新模型, 方法会返回模型实例。不过,在使用之前,你需要先在模型上指定 fillable 或 guarded 属性,因为所有的 Eloquent 模型在默认情况下都不能进行批量赋值。当我们设置好批量赋值的属性,就可以通过 create 方法插入新数据。 create 方法将返回已保存的模型实例:
$flight = App\Flight::create(['name' => 'Flight 10']);

4、lavarel自动事务?

DB::transaction方法里面是闭包,参数用use传进去
DB::transaction(function () use ($request,$lesson) {//dd($request->toArray());$lesson['l_title']=$request['l_title'];$lesson['l_introduce']=$request['l_introduce'];$lesson['l_preview']=$request['l_preview'];$lesson['l_is_commend']=$request['l_is_commend'];$lesson['l_is_hot']=$request['l_is_hot'];$lesson['l_click']=$request['l_click'];$lesson->save();//dd($lesson['l_id']);//dd($lesson->toArray());//2、插入标签课程数据--关系表$tags=$request['tags'];foreach ($tags as $tag){$tag_lesson=[];$tag_lesson['tl_t_id']=$tag;//$tag_lesson['tl_l_id']=$lesson['l_id'];//TagAndLesson::create($tag_lesson);//dd($tag_lesson);$lesson->hasManyLessonTags()->create($tag_lesson);}//videos数据过来的时候是json数据,true表示转成数组而非对象$videos=json_decode($request['videos'],true);//dd($videos);foreach ($videos as $video){unset($video['v_id']);$lesson->videos()->create($video);
//            $lesson->videos()->create([
//                'title'=>$video['title'],
//                'path'=>$video['path'],
//            ]);
      }});

5、lavarel中常驻session的有用信息有哪些?

|||-begin

array:6 [▼"nowControllerAction" => "LessonController.index""_token" => "NMEDJcOEzZecOtscrKhgaxRtuXbprWGFxGcRz5JP""_previous" => array:1 [▼"url" => "http://legend3.com/admin/lesson"]"_flash" => array:2 [▼"old" => []"new" => []]"login_admin_59ba36addc2b2f9401580f014c7f58ea4e30989d" => 1"PHPDEBUGBAR_STACK_DATA" => []
]

|||-end

_previous:上一个url
_flash:闪存信息

6、模型一对多关系:查找视频所属的课程的时候出现Call to a member function lesson() on string错误?

模型关联的方法头应该是集合而不是字符串:所以{{$d['v_title']->lesson()->find(1)}}错误

正确应该为:{{$d->lesson()->find(1)}}

7、用一对多(反向)的时候,模型关系参数书写错误?

真的可以仔细阅读文档,明确参数含义
//视频属于课程
public function lesson(){return $this->belongsTo('App\Model\Lesson', 'v_l_id','l_id');
}

8、在课程和视频的一对多中,如何通过视频获取对应课程的名称?

直接动态属性而非方法的形式:{{$d->lesson->l_title}}

9、lavarel视图中一行内的if怎么写?

select中判断是否被选中:@if($video['v_l_id']==$l['l_id']) selected @endif

10、Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException 原因?

一般是路由错误,比如修改操作的请求不是PUT方法:@method('PUT')

11、模型使用update方式更新(不必用AR模型方式更新)?

$result=Member::where('id','7')->update(['age'=>82']);

二、内容在总结中

转载于:https://www.cnblogs.com/Renyi-Fan/p/11605147.html

legend3---6、legend3爬坑杂记相关推荐

  1. legend3---5、lavarel爬坑杂记

    legend3---5.lavarel爬坑杂记 一.总结 一句话总结: 边做边学,变学边做,可能会节约很多时间,熟悉的就跳着看,不熟悉的就慢慢看 1.如何tags表中的主键是t_id而非id,如何使用 ...

  2. Vue 爬坑之路(六)—— 使用 Vuex + axios 发送请求

    Vue 原本有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource 目前主流的 Vue 项目,都选择 axios ...

  3. Android爬坑之旅:软键盘挡住输入框问题的终极解决方式

    本文由BarryZhang原创,同一时候首发于diycode.cc.barryzhang.com .github.com/barryhappy.非商业转载请注明作者和原文链接. 前言 开发做得久了.总 ...

  4. 【爬坑】在 IDEA 中运行 Hadoop 程序 报 winutils.exe 不存在错误解决方案

    [爬坑]在 IDEA 中运行 Hadoop 程序 报 winutils.exe 不存在错误解决方案 参考文章: (1)[爬坑]在 IDEA 中运行 Hadoop 程序 报 winutils.exe 不 ...

  5. JWT 入坑爬坑指南

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | 公众号「程序新世界」 越来越多的开发者开始学习 ...

  6. 【转载】python3安装scrapy之windows32位爬坑

    python3安装scrapy之windows32位爬坑 原创 2016年11月06日 01:38:08 标签: scrapy / windows / python / 开源框架 / 网络爬虫 早就听 ...

  7. mpvue 小程序开发爬坑汇总

    <!-- 小程序的爬坑记录 --> 1 微信小程序之动态获取元素宽高 var obj=wx.createSelectorQuery(); 2 微信小程序图片自适应 <image cl ...

  8. Android爬坑之旅:软键盘挡住输入框问题的终极解决方案

    前言 开发做得久了,总免不了会遇到各种坑. 而在Android开发的路上,『软键盘挡住了输入框』这个坑,可谓是一个旷日持久的巨坑--来来来,我们慢慢看. 入门篇 Base 最基本的情况,如图所示:在页 ...

  9. Nuxt爬坑系列之vuex

    坑的背景介绍 要用 bootstrap-vue 这个vue的ui框架来重构公司的官网,因为公司官网之前使用bootstrap搭建的,现在想用nuxt框架来重构,恰好bootstrap出了结合vue的版 ...

最新文章

  1. 机器学习本该用起来更简单
  2. 转 linux进程内存到底怎么看 剖析top命令显示的VIRT RES SHR值
  3. 基于快速原型模型建立商业呼叫中心SPOMP的应用研究
  4. 在学习Python基础中需要知道的知识点:运算符大全,收藏,以后方面查询(算术运算符、赋值运算符、比较运算符、位运算符、逻辑运算符、成员运算符、身份运算符、运算符优先级))
  5. Angular中使用双向数据绑定操作表单的input、checkboc、radio、select、textarea实现简单的人员登记系统实例
  6. Spring RestTemplate中几种常见的请求方式
  7. CSS3的过渡和转换
  8. Asp.net Ajax Control Toolkit设计编程备忘录(色眼窥观版)——第3回(UE专辑)
  9. LM3886-SVO純直流功率放大器
  10. ffmpeg API变更 2009-03-01—— 2017-05-09变更
  11. mysql创建表代码_MySQL------代码建表
  12. 雷电模拟器 服务器无响应,雷电模拟器怎么用脚本长时间运行未响应win10
  13. sqli-labs(11-17)
  14. Android 标题下划线 选中效果
  15. The retrospective material for unit_4 Survival
  16. Eclipse设立编辑器为绿豆沙颜色
  17. HDU 2389 Rain on your Parade(二分匹配+Hopcroft-Carp算法模板题)
  18. 渗透测试 | UserInfo信息收集
  19. cad特性匹配快捷键命令_CAD复制图形或特性的相关命令和操作
  20. 图像标签 链接标签

热门文章

  1. Navigator 对象
  2. [Android]生成heap dump文件(.hprof)
  3. redis list操作
  4. Servelt学习笔记之二——使用Servlet提取表单中的数据
  5. Oracle归档已满的处理办法
  6. SVN更新提示内容被锁定
  7. DeepLearning tutorial(5)CNN卷积神经网络应用于人脸识别(详细流程+代码实现)
  8. python的设计模式之MVC模式
  9. CSS 选择器参考手册
  10. java 程序架构知识