wlkmf
(P0301746)
1
請問以下情況YII如何實現:
INFO TABLE:
ID formClass classTime subject teacherID room
1 K1A 08:00 中文 T001 R001
假如我現在新增一筆以下記錄:
ID formClass classTime subject teacherID room
1 K1A 08:00 中文 T001 R002
YII會提出錯誤信息,因為同一個老師不可能同一時間教另一班。
假如我再新增一筆以下記錄:
ID formClass classTime subject teacherID room
1 K1A 08:00 中文 T001 R001
YII會提出錯誤信息,因為同一個romm不可能同一時間有2班。
除了再每次插入數據庫前($model->save()),都用time或者room去查詢數據庫有沒有重複teacherID或者room之外,還有什么好的方法嗎?謝謝
yiqing95
(Yiqing 95)
2
你这个不是单纯的一个字段验证了(单字段还可以用unique验证器) , 涉及比较复杂的业务逻辑了
自己写 inline validate 吧。就是在model里 自己写验证方法 用AR的exists方法 或者sql语句select下看存不存在
关于内联验证器 参考:form.model 处的validate
wlkmf
(P0301746)
3
非常感謝,根據你的作法,自定義rules就解決了,YII太強大的。