如何使用Eloquent Laravel 5.1定制新属性?

问题描述 投票:0回答:2

我使用下面的脚本来更新现有的帖子模型:

$post = Post::find($postId);
$post->title = $title;
$post->description = $description;
$post->save();

但是我想将old_title属性存储在Post对象的另一个进程中,所以我在重置标题之前添加$post->old_title = $post->title。然后脚本看起来像:

$post = Post::find($postId);
$post->old_title = $post->title;
$post->title = $title;
$post->description = $description;
$post->save();
// Another process

所以我得到了错误Column not found: 1054 Unknown column 'old_title' in 'field list' 如何忽略这个属性? 对不起,我的英语不好

php laravel
2个回答
1
投票

这将允许您为模型添加除db中的列之外的其他属性

class MODEL_NAME extends Eloquent {

    protected $table = 'TABLE_NAME';
    protected $appends = array('APPENDED_VALUES');

}

0
投票

如果编辑post模型的迁移并在数据库表中添加“old_title”字段并尝试使用$ post-> title更新old_title值,则会更好。它将帮助您跟踪用户的更新模式并对其执行某些操作。

© www.soinside.com 2019 - 2024. All rights reserved.