【发布时间】:2016-10-11 06:35:03
【问题描述】:
下面是模型代码
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Product extends Model
{
protected $appends = [
"desc"
];
protected $fillable = ['id'];
public function getDescAttribute()
{
return strip_tags( $this->attributes['description'] );
}
}
所以现在当我这样做的时候
$product = Product::first();
它不会返回 $product 中的 desc 字段,尽管当我执行 $product->desc 时它会返回结果,但我希望将该结果附加到模型本身中。
下面的代码给我错误
$product = Product::first()->get(['desc']);
它运行
Select desc from products...
但是由于 desc 不存在,我得到了错误。
我做错了什么吗?
【问题讨论】:
-
添加
protected $visible = ['desc'];会发生什么? -
然后
$product = Product::first();显示App\Product {#729}而不是修补程序中的列
标签: php laravel laravel-5 eloquent laravel-5.3