是否可以配置Yii2 RESTful API以驼峰格式而不是蛇形格式返回JSON响应,而无需以这种方式创建列名?我在文档或其他地方找不到任何提及。
仅靠配置是不可能的,要实现这一点,您需要覆盖fields()方法您需要针对api公开的每个模型执行此操作
class SomeModel extends \yii\db\ActiveRecord
{
/**
* @return array|false
*/
public function fields() {
// what you want is to rename the keys of parent::fields()
$formattedFields =[];
foreach (parent::fields() as $key => $name){
$formattedFields[Inflector::variablize($key)] = $name;
}
return $formattedFields;
}
}
fields()
方法基本上是一种添加,删除,重命名或重新定义字段的方法。我链接的文档页面包含有关用例和其他示例的更多详细信息