
legend3---lavarel常用操作代码2
发布日期:2022-09-10 02:32:44
浏览次数:1
分类:博客文章
本文共 5144 字,大约阅读时间需要 17 分钟。
legend3---lavarel常用操作代码2
一、总结
一句话总结:
对于王思cong被执法人的感悟:失意时 莫心伤,得意时 莫膨胀
1、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'],// ]); } });
2、使用Seeder创建数据库数据?
· 生成seeder文件:php artisan make:seeder UsersTableSeeder
· 运行seeder文件:php artisan db:seed --class=UsersTableSeeder
· faker本地化:$faker=\Faker\Factory::create('zh_CN');
$faker->phoneNumber, 'password' => $password ?: $password=bcrypt('123456'), // secret 'email' => $faker->email, 'name' => $faker->name, 'created_at' => date('Y-m-d H:i:s',time()), 'updated_at' => date('Y-m-d H:i:s',time()), ]; } DB::table('users')->insert($data); }}
3、lavarel变量输出报错情况?
@if(isset($d->blog->b_title)) {{$d->blog->b_title}} @endif
4、ajax?
主要传递回来valid和message两个变量,一个显示返回码,一个显示返回信息
视图端
//课程的点赞收藏操作 $('.fa_like').click(function () { let l_id=$(this).attr('l_id'); let _this=$(this); //console.log(l_id); $.post("/like_lesson", {'l_id':l_id,'_token':'{{csrf_token()}}'} ,function (data) { console.log(data); if(parseInt(data.valid)==1){ _this.hide(); _this.parent().find('.fa_like_no').show(); layer_alert_success(data.message); }else{ layer_alert_fail(data.message); } }); });
控制器端
//点赞课程 public function like_lesson(Request $request){ $back_data=[]; $back_data['valid']=0;//表示连接失败 $back_data['message']=''; //dd($request->all()); $ll_l_id=$request->input('l_id'); //获取登录的用户id $ll_u_id=Auth::guard('user')->user()->id; $data=[]; $data['ll_l_id']=$ll_l_id; $data['ll_u_id']=$ll_u_id; $ans=LikeLesson::insert($data); if($ans){ //验证码错误 $back_data['valid']=1;//表示验证码错误 $back_data['message']='点赞成功!'; return $back_data; }else{ $back_data['valid']=0;//表示手机验证码发送成功 $back_data['message']='点赞失败!'; } return $back_data; }
5、vue将时间戳转成时间?
methods里面加一个方法即可
6、转码和解码?
转码:$blog['b_summary']=addslashes(htmlspecialchars($blogSummary));
解码:$summary=stripslashes(htmlspecialchars_decode($perBlogData['b_summary']));
7、自定义排序规则 排序?
usort($question_list, array('App\Model\Admin\ChooseQuestion\Timeline\GroupByTimeline',"cmp_question_collected"));
//1、可以先对数组按照时间戳来由大到小排序(因为优先显示近期的,)usort($question_list, array('App\Model\Admin\ChooseQuestion\Timeline\GroupByTimeline',"cmp_question_collected"));//1、按照题目的收藏时间由大到小排序public static function cmp_question_collected($a, $b){ if ($a['uq_collected_time'] == $b['uq_collected_time']) { return ($a['uq_id'] > $b['uq_id']) ? -1 : 1; } return ($a['uq_collected_time'] > $b['uq_collected_time']) ? -1 : 1;}
8、vue判断一个数是否在数组里面?
["a","b","c"].indexOf("a")
9、检测windows宽度改变函数?
$(window).on('resize', function() { 代码 }).resize();
{{--小屏幕端的时候去除 内容中container 的左右缩进--}}
10、post请求处理表单信息?
获取form的数据:$('#do_update_info_form').serializeArray();
视图端
{{--post请求提交表单信息--}}
控制器端
public function do_update_info(Request $request){ $back_data=[]; $back_data['valid']=0;//表示连接失败 $back_data['message']=''; //dd($request->all()); $data=$request->input('data'); //dd($data); $name_length=mb_strlen(trim($data['u_name']),'utf8'); if($name_length>10){ $back_data['valid']=0; $back_data['message']='昵称的字符数不能超过10个'; return $back_data; } $motto_length=mb_strlen(trim($data['u_motto']),'utf8'); if($motto_length>100){ $back_data['valid']=0; $back_data['message']='个性签名 的字符数不能超过100个'; return $back_data; } if($name_length) $name=$data['u_name']; if($motto_length) $motto=$data['u_motto']; $picture=$data['u_picture']; $u_id=Auth::guard('user')->user()->id; $user=Auth::guard('user')->user(); //修改用户信息 if(isset($name)) $user->name=$name; if(isset($motto)) $user->motto=$motto; $user->picture=$picture; $ans=$user->save(); if($ans){ $back_data['valid']=1; $back_data['message']='操作成功!'; return $back_data; }else{ $back_data['valid']=0; $back_data['message']='操作失败!'; } return $back_data; //dd($user);}
二、内容在总结中
转载地址:https://www.cnblogs.com/Renyi-Fan/p/11605489.html 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2023年09月08日 10时38分55秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
uni-app(9)— 下拉刷新以及关闭下拉刷新,上拉加载(页面触底)
2019-03-07
uni-app(12)—图片上传和预览
2019-03-07
linux应用编程shell基础(四)--基本语句(条件语句、循环语句)
2019-03-07
linux应用编程shell基础(五)--函数、多文件编程
2019-03-07
简单瞎搞题(状压dp bitset)
2019-03-07
2017ACM EC Final 补题题解
2019-03-07
ICPC基础数学知识点整理
2019-03-07
2016ACM ECfinal补题题解
2019-03-07
树形dp
2019-03-07
dp 最长上升子序列 拦导弹
2019-03-07
全屏Dialog实现,布局可扩展到状态栏和导航栏
2019-03-07
Android四大组件之Activity--管理方式
2019-03-07
Retrofit源码解析流程图
2019-03-07
java垃圾回收
2019-03-07
java线程--一网打尽
2019-03-07
Android API 28+ View监听按键事件的处理方式
2019-03-07
设计模式(七)—— 装饰器模式
2019-03-07
设计模式(十二)—— 享元模式
2019-03-07
设计模式(十五)—— 模板方法模式
2019-03-07