【发布时间】:2016-12-16 14:51:10
【问题描述】:
我对使用 Laravel 的代码有疑问。我在模型中定义了一个属性来获取一个列表。这需要很多时间。我在控制器中使用这个模型。按照代码:
protected $appends=["consume_info"];
public function getConsumeInfoAttribute(){
//query a lot of information from mysql
}
我想知道Controller或Model中是否有一个属性可以避免在model中使用mysql进行查询。
是否有设置告诉 Laravel 何时加载此附加属性?
【问题讨论】:
-
为什么不简单地使用函数而不是追加呢?像
getConsumeInfo()这样的东西并在需要时像$model->getConsumeInfo()这样打电话? -
你说得对,但我真的很好奇,我认为在模型中设置一个标志来决定代码何时工作是个好主意!