6
我正在使用MySql数据库,因此我在数据库模式中将列类型定义为Tinyint(1)。获取布尔值为true或false,而不是1或0
在我的ActiveRecord中我设置了布尔验证器。保存逻辑按预期工作。
我现在想要的是当我调用Yii2 REST服务时,返回boolean字段为true或false,而不是1或0,因为在客户端,框架带有严格比较(===),1不是同样如此。
当然,我可以在发送内容之前手动覆盖该值,或者在将其加载到模型之前在客户端上覆盖该值,但是我希望能有一个更清晰的解决方案。
是的,我已经做了,但我希望这样的一些“自动”方式。该字段在我的模型中被标记为布尔值,是不是有办法让JSON Response Formatter自己知道? – edrian
我不相信有一种方法可以自动完成,因为它不是大多数情况下需要的,如果您需要这样做,您可以在afterFind上添加该功能。 – marche
是的,我想你是对的..但我至少想要一种方法来扩展模型或控制器的这种行为(也许只是延伸afterFind,如你所建议的)。你知道如何获得所有与“布尔”验证器设置的领域? – edrian