我有以下Post模型。
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
protected $fillable = [
'app_id',
'title',
'content'
];
private $app_id;
public function __construct()
{
$this->app_id = 43;
}
}
我正在尝试使用以下代码保存新帖子:
$post = new Post();
$post->title="Test title";
$post->content="Test content";
$post->save();
这会被保存,但app_id不会被保存。有什么想法为什么它在我新建对象时不会被设置?
答案 0 :(得分:2)
您不应该定义 private $ app_id; 。如果你这样做,当你试图在'app_id'属性上设置值时,Laravel的魔法方法将不起作用。
答案 1 :(得分:1)
试试这个
$this->attributes['app_id'] = 43;