laravel ORM模型一般如何>利用/h2>
>弁言/p>
前两期为了说明laravel框架提供的数据库操作能力,直接使用DB门面操作, 而没有引入更为强大的eloquent orm功能。从本期开始,我们就分次把 eloquent的一些简要知识点,为大家提炼演示一下。主要以代码为主,配以简要说明。
学习时间
Eloquent其实是一个 ActiveRecord 类型的 ORM。这是一个位于数据库操作之上的一个中间层, 不仅仅是对于整张表的操作,更能细化到每行记录的增删改查。

创建一个模型类非常简单,只用继承系统的模型就可以了:
use Illuminate\Database\Eloquent\Model; class Contact extends Model {}
因为遵循的是约定大于>设置/strong>的惯例,所以上述模型如不指定表名,默认就是默认数据库的contacts表了。
对于数据库插入新条目,则可以便捷地使用模型的方法执行,比如下面这样:
public function save(Request $request) {
$contact = new Contact();
$contact->first_name = $request->input('first_name');
$contact->last_name = $request->input('last_name');
$conatct->email = $request->input('email');
$contact->save();
return redirect('contacts');
}
创建一个合约,并使用传入的表单数据填充。接着是使用模型对数据的查询:
public function show($contactId) { return Contact::findOrFail($contactId); }
这里有一个语法糖,就是 findOrFail,如果找到就返回一个模型,找不到就返回默认错误页面。 上述方法会对Contact模型调用toArray方法进行格式化,然后返回一个 JsonResponse 对象的响应体。
如果返回的模型想要手动定制一下,那么在查询结果集中,使用Collection提供的格式化功能就好了。
public function vips() { return Contact::where('vip', true)->get()->map(function ($contact) { $contact->formalName = "The exalted {$contact->first_name} of the {$contact->last_name}s"; return $contact; }); }
大家注意,get方法返回的是一个 Eloquent Collection,包含了Model模型的集合。所以使用map遍历集合元素时, 每个元素其实都是一个独立的Contact对象,直接给对象追加属性就可以增加字段了。
创建>模子/p>
除了上面我们使用手动创建模型文件之外,laravel还为我们提供了命令行方式快捷创建。 使用下面的指令:
php artisan make:model Contact
这样会在 App 命名空间下生成一个标准的模型文件 Contact.php,内容如下:
namespace App; use Illuminate\Database\Eloquent\Model; class Contact extends Model { // }
如果数据库表还没有创建,你想要把迁移文件的骨架代码也生成出来,只需在生成指令上追加参数如下:
php artisan make:model Contact --migration
有些时候,我们维护一些数据库和表,想要动态切换某个模型所对应的数据库表, 那么只需在模型文件内手动指定表名即可:
protected $table = 'contacts_secondary';
如果你使用的主键不是id,是自定义的字段名,那也可以手动指定:
protected $primaryKey = 'contact_id';
这个contact_id是系统维护,而非自增的,你需要显式声明不要自增这个字段:
public $incrementing = false;
如果创建的表内有created_at, updated_at等等标准字段,而在数据库表的字段默认值内允许为NULL,或者默认为NULL。 你想要他们自动更新为当前系统时间,只需要添加这个配置项:
public $timestamps = false;
存储的日期时间格式,也可以自定义:
protected $dateFormat = 'Ymd His';
好了,关于模型的基本属性和常用方法,也就这些了。
写在>末了/p>
本文通过演示laravel框架模型创建,以及通过演示默认配置项到自定义配置内容, 为大家展示了Model所具备的一些很赞的特性。
Happy coding :-)
我是@程序员小助手,持续分享编程知识,欢迎关注。
有什么可以自己DIY的手工礼物吗
如果是女生的话可以做一些饰品,操作简单方便,成本还不高,也可以做一些羊毛毡戳戳乐 、手工丝网花、送女朋友可以折川崎玫瑰,渐变色的超级好看,比较擅长折纸的可以学习一下酒杯玫瑰(如果想学的话也可以问我哦,以上的我都做过)
戳的羊毛毡
丝网花永生花
花环
(原谅我像素差,拍照技术差)
有些女生特别巧,逢年过节,手工做一些小礼物,送给自己的朋友和同事,比如自制生日贺卡,叠一些星星送给男友,代表自己的心愿,还折一朵朵小花送给同事的小孩,代表阿姨的心意,等等一些手工做的东西在女生中逢年过节做:的太多了!作为节日礼物互赠好友!谢诚邀!
塑料瓶剪开在火上烧一下,再粘在一起做成小花,很简单,视频教程在我的主页
钩编小黄人,这个需要会钩针,我的主页也有很多视频教程
钩编八爪鱼
仙人掌盆栽
编织作品送人非常实用
猫窝,送给有喵子的人
小型狗子也能用
两款窝棚我的主页都有视频教程
喵子的帽子
喵的内心独白:朕应该戴皇冠,谁稀罕你的草帽
做手套也是极好的
宝宝鞋做新生儿礼物最好啦
给孩子做个搞怪帽子也不错
小小的多可爱
这个是逛街看到的一个发圈,25元,其实钩起来很简单,2分钟就搞定
帽子毯子都能自己钩
手工编织很实用吧哇咔咔咔咔
我的主页都很多视频教程,喜欢的可以去看下
我今天就发快递,寄走了一个自己DIY的手工礼物——手编小篮子。
这个圆角网纹小篮子是给侄子编的,他马上就要结婚成家了,侄媳妇可以拿它做收纳筐用,比如放在餐桌旁,装干果零食什么的。
它的材质是纸藤,怕水,落灰了,或者脏了,只能用湿抹布擦擦,所以没有打包带编的筐使用面那么广,如果是打包带编的,就可以放在卫生间装洗护用品了。不过纸藤比较轻,裁细凹造型相对容易些,所以这个小篮子做摄影道具也不错。
侄子和侄媳妇收入高,如果买礼物送他们,还真不知买什么能让他们高兴,想到自己会编筐,就编了一个小篮子送他们,怕他们嫌弃,我事先发了篮子图片给他们,问要不要,喜不喜欢,结果侄子很喜欢,欢喜的说“我要,很好看啊!”这一夸,我就信心大增了,手工的东西,全世界独一无二,即便是一个人编一样的作品,因为是手工,都不会完全相同,再加上为某人特意制作,这个情意又无法用钱来衡量,所以自己DIY的礼物一般都所向无敌,会被所有人喜欢(当然前提是礼物足够精致)。
我原来编的筐,大多都是方方正正的,虽然容量够大,适用性也强,但总觉得它们像土特产商店,农贸市场的筐,而不是大型超市里,聚光灯下的精致小篮子,为了实现从筐到篮子的飞跃,我编这个纸藤小篮子时,采用了不一样的打底方法,既先编一个小的压一挑一的长方形,外延再用小窄带绕圈编几圈,这样操作的结果是,小篮子的4角就是柔和的圆角了,网纹也是自己琢磨着编的,有了网纹这个小装饰,小篮子又增色不少。
每次开发新品都很费脑子,但每次看到新作品,又会无比开心,这就是自己DIY的乐趣了,希望我的作品能给提问的你一点启发,其实DIY礼物很多的,手工刺绣鞋垫,亲手做手拎布袋子都可以的,既有掌心温度,生活中又常能用到,相信收到礼物的朋友,一定会时时想起你的。
有很多的哦,比如下面的这个
新年礼物如贺卡、剪纸
视频加载中...
还有一些比如这种创意手工摆件
视频加载中...
上面是制作一种漫威片头动画的效果,你可以给朋友拍一组搞笑动作,制作成这个,哇塞追女孩子一追一个准。
视频加载中...
这个是圣诞礼物,小房子DIY手工,一闪一闪亮晶晶~
视频加载中...
这个是一些小礼物包装的技巧,你可能用的到,也有一些礼物DIY。
视频加载中...
这是一个超级马里奥存钱罐,或者说巧克力豆ATM,形式比较创新,硬币放进去,马里奥搬回家,然后给你一个巧克力豆。
视频加载中...
这是照片制作的一些小摆件,也比较适合做礼物,都挺不错的,第一个相当有意思。
视频加载中...
可能过时了,但也算圣诞节礼物吧。
视频加载中...
汽车玩具小>礼品/p>
视频加载中...
制作一些自己印制对方图像的礼物,比如印有对面自拍的衬衫,鞋子,挂件,摆件,特别是用相片做一个吊坠,还是很不错的。挂在胸前,暖在心理。
视频加载中...
如果你水平高到厉害的不行,那这种铅笔雕塑送一套也绝对让这礼物高人一等吧。这个就不是一般人手工能做的了。朋友,加油。
视频加载中...
这个也是个玩具吧,鳄鱼咬手指,也可能做成鲨鱼咬手指,思路都是一样的,电机转动,适时卡位,原理简单,制作要求中等,还是可以的。
视频加载中...
如果你要表白,这个大乐高一定让对方惊喜╰(*°▽°*)╯。
视频加载中...
一战中的飞机模型,关于这个我还发过很多的类似的武器类DIY:
比如:
DIY科技小制作纸盒版《战狼》武器AK http://toutiao.com/i6452074064344269325
今日DIY:一个自动连发高大上背包式玩具,魂斗罗在想你招手
http://toutiao.com/i6480816423844184589
DIY科技制作:战狼系列武器之纸盒版玩具不可名的冰魂远程大(狙击枪)
http://toutiao.com/i6452826881161953805
关于这些我发过一个图集,可以进我主页,底下菜单栏看到“特别推荐”,有个战狼武器集锦:http://toutiao.com/item/6459693376366182926/ 七彩鲑鱼纸盒可乐罐科技小制作DIY战狼系列合集图片集锦 你可以前往这里面看。
我特别喜欢一个无限循环LED等的桌面摆件,推荐给你。
教程网址是这个:http://toutiao.com/i6468983419115143693 名字叫做:今日DIY:达人教你如何制作一个无限循环LED黑洞,逼格从摆件走起
你还可以查看我主页-特别推荐--11月和10月的月度DIY视频精选,都是月度播放量冠军,都是非常好的DIY手工制作。
懒得进我主页,你可以看下面的网址:
11月DIY-榜单前5名:http://toutiao.com/item/6493391328389366285/
10月DIY-榜单前10名:http://toutiao.com/item/6481483358734909966/ (这个重点推荐)
其实还有很多,比如比较适合女生的:
今日DIY:我家里有个龙猫!许个愿吧,龙猫住下来吧:http://toutiao.com/i6465637569315996173
等等吧,由于发过400多个视频,找起来太麻烦了,所以我就不一一列举了,欢迎你前往我的主页查看手工DIY类视频,集中在手工、生活窍门DIY、趣味生活视频等内容,欢迎关注~~~~
点个赞吧,各位看官?[捂脸]