以下是模型的代码。
<?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...
但是因为描述不存在,我得到了错误。
我做错了什么吗?
protected $visible = ['desc'];
时会发生什么? - user1897253$product = Product::first();
在 tinker 中显示App\Product {#729}
,但没有任何列。 - Sahil Deliwala