可以做到一样的结果, 不同的方法而已,
就像我都可以不使用观察器, 直接在 UsersController 控制器的 store 方法里面进行处理,
分开处理, 是为了符合所谓的 solid 原则,
单就这里的 密码属性而言, 使用修改器( 如果要设置 密码, 就执行该函数, 把密码按一定格式保存 )更为合适, 而 observer 可以做的更多, 比如前面用到的队列, 回复数 +1, -1 等;
个人理解的 修改器和访问器, 主要就是对当前属性负责, 不要涉及其它业务.
举个例子, 数据库保存一个时间的格式是 timestamp, 而前台页面设置时是 datetime 格式, 那么设置了 修改器, 就可以在保存时自动改为 timestamp 类型而存入数据库;
同样, 设置了访问器以后, 在前台直接使用时间属性, 也就可以访问到 改为 datetime 格式的 时间
可以做到一样的结果, 不同的方法而已,
就像我都可以不使用观察器, 直接在 UsersController 控制器的 store 方法里面进行处理,
分开处理, 是为了符合所谓的 solid 原则,
单就这里的 密码属性而言, 使用修改器( 如果要设置 密码, 就执行该函数, 把密码按一定格式保存 )更为合适, 而 observer 可以做的更多, 比如前面用到的队列, 回复数 +1, -1 等;
个人理解的 修改器和访问器, 主要就是对当前属性负责, 不要涉及其它业务.
举个例子, 数据库保存一个时间的格式是 timestamp, 而前台页面设置时是 datetime 格式, 那么设置了 修改器, 就可以在保存时自动改为 timestamp 类型而存入数据库;
同样, 设置了访问器以后, 在前台直接使用时间属性, 也就可以访问到 改为 datetime 格式的 时间
可以做到一样的结果, 不同的方法而已,
就像我都可以不使用观察器, 直接在 UsersController 控制器的 store 方法里面进行处理,
分开处理, 是为了符合所谓的 solid 原则,
单就这里的 密码属性而言, 使用修改器( 如果要设置 密码, 就执行该函数, 把密码按一定格式保存 )更为合适, 而 observer 可以做的更多, 比如前面用到的队列, 回复数 +1, -1 等;
个人理解的 修改器和访问器, 主要就是对当前属性负责, 不要涉及其它业务.
举个例子, 数据库保存一个时间的格式是 timestamp, 而前台页面设置时是 datetime 格式, 那么设置了 修改器, 就可以在保存时自动改为 timestamp 类型而存入数据库;
同样, 设置了访问器以后, 在前台直接使用时间属性, 也就可以访问到 改为 datetime 格式的 时间
推荐文章: