yii2学习教程之5种内置行为类详解
public function behaviors(){ 要留意的是,yii2框架的slugAttribute默以为slug,而我们方才在数据表中增进的字段也叫slug,因此不必要再配置slugAttribute了。 接下来我们天生一个username=wang hao的记录,你会发明该记录的slug自动被添补为wang-hao了 Url美化虽然到而今,通过 http://abc.com/memberr/wang-hao 我们依然得不到,还必要UrlMananger的支持。 Action的实现接下来我们的MemberController节制器里 use yiiwebController;use appmodelsMember; class MemberController extends Controller{ public function actionSlug($slug) 接下来你会见/member/wang-hao后,获得了想要的功效。 这个环境在许多博客和cms站点常常用到,好比你可以会见下月光博客看看它的url,通过 SluggableBehavior 举动帮我们省去了本身填写slug的贫困,自动添加。 虽然这个举动类有一个弱点就是不支持中文,假如你的字段是中文,它说明不出来,不要紧,下节我们会讲授怎样让他支持中文 关于 SluggableBehavior 尚有几个参数有须要交接一下 SluggableBehavior::className(),'immutable' => true,'ensureUnique'=>true,]; }immutable 此参数默以为假,当配置为真时,一旦一个记录被天生,往后就算更更新了 'attribute' => 'username' 字段,slug值也不会改变。 ensureUnique 此参数默以为假,当配置为真时,可以有用停止slug的一再,假如两个username都叫做 wang hao,则天生的slug会是wang-hao 和 wang-hao-2 其他两个还剩下 BlameableBehavior 和 AttributeTypecastBehavior 两个举动,着实说到这里你应该能感受到,yii2的内置举动首要是对AR模子属性的加强,事实这是我们最常用的。 通过上面三个举动的进修,我想你可以很轻松的搞定这两个,代码方面我不再讲授,说嗣魅这两个举动的浸染。 BlameableBehavior该举动首要是为一个ar对应数据表自动添补当前登录会员ID BlameableBehavior::className(),'createdByAttribute' => 'author_id','updatedByAttribute' => 'updater_id',]; }假如是靠山等模块,你可以配置value字段来完成对登录ID的获取。 AttributeTypecastBehaviorAttributeTypecastBehavior 举动是yii2在v2.0.10版本时增进的,首要提供了一个自动转换模子属性名目标举动,这针对付相同MongoDB或Redis等无模式的数据库来说长短常有效的。 今朝该举动提供的范譬喻下 虽然它也提供了一个 手动要领 typecastAttributes,你可直接挪用举办属性名目标转换。 最后以上就是yii2提供的5个内置的举动类,通过这些举动(首要是前3个)可以帮我们镌汰许多代码的编写。 虽然后续的章节你将逐步领会到举动的更多给力之处,一路等候。 以上就是这篇文章的所有内容了,但愿本文的内容对各人的进修可能事变能带来必然的辅佐,假若有疑问各人可以留言交换,感谢各人对编程之家的支持。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |