YII2 dropDownList 下的 prompt 问题 [ 2.0 版本 ]
在view下增加了一个dropDownList($Config, ['prompt'=>'Select...']) ?>
每次更新时如果选择的是prompt的话那么他的默认值就是NULL ,从而造成插入到mysql时无法更新
Column 'xxx' cannot be null,
我就想问有没有设置这个promot的默认值为0的,
我现在做的是model->save()
的方法之前做判断
如果post过来的值为空的话,就将其设置为0,但我个人感觉这样做也太low了点。
不知道哪位有没有更好的一个方法
最佳答案
-
能想到的几种答案:
1.继承重写下dropDownList方法,将prompt的string值改成array
2.在beforeSave方法里头做判断填充值
3.数据库中将字段属性改为空
4.不用dropDownList,手动生成select
5.在rules里头直接分配默认值共 3 条回复strive 觉得很赞
其他 3 个回答
sucksdie
注册时间:2016-10-31
最后登录:2017-05-26
在线时长:2小时46分
最后登录:2017-05-26
在线时长:2小时46分
- 粉丝0
- 金钱260
- 威望0
- 积分280