关于关联模型

浏览:696 发布日期:2014/03/19
1、如果关联插入时,没有插入关联数据,则关联数据也无法关联更新。这个逻辑是不对的。比如新生入学时,没有选课信息,难道要等到选课时再录入这个学生信息?

建议在关联模型中定义一个新属性,其作用是,开启该属性后,强制在关联更新时遇到不存在的数据,可关联插入。
2、create操作不支持关联模型。因为create不懂的表单中哪个字段是隶属于哪个数据库表的。这就造成关联更新、关联插入很麻烦。

建议create操作支持关联模型。如果数据库中主表和关联表字段名不重复,则自动create数据。如果有重复字段,则在定义关联模型时,进行字段映射。

3、数据库操作的容错能力实在太和稀泥了(就是不报错)。这其实就是增加了新学thinkPHP难度和调试难度。
例如save()操作,如果不存在id时,正常的逻辑是报错(ERROR:没有主键存在,无法更新),可thinkPHP的做法是没有任何反馈;
例如find($id),如果$id是个null,竟然返回的是表中第一条记录,如果我想返回第一条记录,就会用first()而不会用find()。

还有很多例子。
评论(
后面还有条评论,点击查看>>