之间的区别是什么
$this->translations;
和
$this->translations()->get();
其中translation是当前模型的关系。我认为两者都做同样的事情。
答案 0 :(得分:3)
它们基本上是一回事。
但是:
$this->translations()->get();
每次调用时都会查询数据库。 $this->translations;
将在第一次执行数据库查询,并将结果存储在内存中供以后使用。答案 1 :(得分:1)
$this->translations;
会将所有翻译返回给相关模型,
而$this->translations()
将为您提供查询构建器实例,您可以在其中将约束添加到相关模型,例如
$this->translations()->where(['locale' , 'en'])->orderBy('sort')->get();