Li3 - 正确处理 MySQL 5.7 生成的列
Li3 - Handle MySQL 5.7 Generated Columns Properly
在 MySQL 中,您可以拥有只读列,这些列会根据子查询/操作获取自动生成的内容。
例如,您可以让它存储从 JSON 列中提取的值(使用 5.7 JSON 功能)。
默认情况下,当您 get
然后尝试 save
一行时,这在 Li3 中不起作用。
它将尝试将该值设置为 null,这会引发 mysql 3105 错误并失败。
与此同时,我不得不编写一个手动 PDO 查询,但如果这在 Li3 中有效,那就太理想了。
您可以使用 Model::save()
的 whitelist
功能来限制写入更新的字段。
在 MySQL 中,您可以拥有只读列,这些列会根据子查询/操作获取自动生成的内容。
例如,您可以让它存储从 JSON 列中提取的值(使用 5.7 JSON 功能)。
默认情况下,当您 get
然后尝试 save
一行时,这在 Li3 中不起作用。
它将尝试将该值设置为 null,这会引发 mysql 3105 错误并失败。
与此同时,我不得不编写一个手动 PDO 查询,但如果这在 Li3 中有效,那就太理想了。
您可以使用 Model::save()
的 whitelist
功能来限制写入更新的字段。