Eloquent列别名

时间:2014-02-04 13:53:23

标签: laravel-4 eloquent

我有一个期望列名为“sales_order_number”的Web应用程序,但实际的列名称是大写的“SALES_ORDER_NUMBER”。我将无法更改数据库,所以如果我不能做某种别名,我将需要重写我的webapp以使用新名称,这将是一个痛苦。任何帮助,将不胜感激。

1 个答案:

答案 0 :(得分:1)

解决方案是在模型中设置mutators。即使列名是蛇形的,我仍然必须使用驼峰案例作为函数名称。所以SALES_ORDER_NUMBER成为SalesOrderNumber。这是一个例子:

protected function getSalesOrderNumberAttribute($value) { return $this->attributes['SALES_ORDER_NUMBER']; }
protected function setSalesOrderNumberAttribute($value) { $this->attributes['SALES_ORDER_NUMBER'] = (is_null($value) ? '' : $value); }