在Laravel框架中,我有2个模型。首先是问题模型:
class Question extends Model
{
protected $table = 'questions';
protected $fillable = [...];
public function answers()
{
return $this->hasMany('App\Models\Answer');
}
...
}
和答案模型:
class Answer extends Model
{
protected $table = 'answers';
protected $fillable = [...];
protected $touches = ['question'];
public function question()
{
return $this->belongsTo('App\Models\Question');
}
...
}
我用代码更新了答案模型中的一些属性:
$answer = $answer->select('id')
->where('id', $id)
->firstOrFail();
$answer->update($data);
当我检查数据库时,Answers表中的数据会更新,包括updated_at列。但是,其父(问题表)不会更新updated_at列中的时间戳。
如何解决这个问题?谢谢。
答案 0 :(得分:0)
只需按照以下内容执行基本操作:
Question::find($questionId)->touch();
这将更新您要执行的timestatmp。