1.模型是代表业务数据、规则和逻辑的中心地方,
通常在很多地方重用,
在一个设计良好的应用中,
模型通常比 控制器代码多。
2.归纳起来,模型
- 可包含属性来展示业务数据;
- 可包含验证规则确保数据有效和完整;
- 可包含方法实现业务逻辑;
- 不应直接访问请求,session和其他环境数据, 这些数据应该由控制器传入到模型;
- 应避免嵌入HTML或其他展示代码,这些代码最好在 视图中处理;
- 单个模型中避免太多的 场景.
- 例如,在高级应用模板, 你可以定义一个模型基类
common\models\Post
, - 然后在前台应用中,定义并使用一个继承
common\models\Post
的具体模型类frontend\models\Post
, - 在后台应用中可以类似地定义
backend\models\Post
。 - 通过这种策略,你清楚
frontend\models\Post
只对应前台应用,如果你修改它, 就无需担忧修改会影响后台应用。