Laravel 向雄辩的集合添加数据?
我正在从数据库中获取各种数据Laravel 向雄辩的集合添加数据?,laravel,eloquent,laravel-5,Laravel,Eloquent,Laravel 5,我正在从数据库中获取各种数据 Product::with('users'); 我还必须执行一个复杂的原始查询来获取一些信息。这将作为数组返回 在我的方法中,我希望获得有用户的产品,然后将原始查询中的数据添加到此集合中,但这些数据作为数组返回。比如: Product::with('users'); Product->extraData = $rawQuery; 如何将原始查询输出添加到我的产品集合?通过使用像Product::这样的雄辩外观,您将获得雄辩的模型对象作为结果,或雄辩的集合对
Product::with('users');
我还必须执行一个复杂的原始查询来获取一些信息。这将作为数组返回
在我的方法中,我希望获得有用户的产品,然后将原始查询中的数据添加到此集合中,但这些数据作为数组返回。比如:
Product::with('users');
Product->extraData = $rawQuery;
如何将原始查询输出添加到我的产品集合?通过使用像Product::这样的雄辩外观,您将获得雄辩的模型对象作为结果,或雄辩的集合对象作为结果,包括通过get方法检索的结果或通过关系访问的结果 现在,如果我理解正确的话,您需要将单个extraData属性与集合项一起添加到Eloquent集合模型中吗?或者您需要为每个产品添加额外数据
- 如果您需要向Eloquent Collection对象添加其他属性,那么使用自定义集合可能是一个好主意。请阅读本节: 或
- 如果您需要每个产品雄辩模型的额外数据,只需在雄辩模型中创建一个新属性,将其公开,并在需要时设置额外数据。使用上面的setExtraData()方法和$extraData属性
- 如果您需要向Eloquent Collection对象添加其他属性,那么使用自定义集合可能是一个好主意。请阅读本节: 或
- 如果您需要每个产品雄辩模型的额外数据,只需在雄辩模型中创建一个新属性,将其公开,并在需要时设置额外数据。使用上面的setExtraData()方法和$extraData属性
<?php namespace App;
use App\CollectionWithExtraData;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
public function newCollection(array $models = [])
{
return new CollectionWithExtraData($models);
}
}
public function setExtraData() {
}
public $extraData = array();