BadMethodCallException в строке Builder.php 2405: вызов неопределенного метода Illuminate \ Database \ Query \ Builder :: answers () - PullRequest
0 голосов
/ 20 февраля 2019
public function productFaq() {
    return $this->hasMany('App\Models\ProductFaq', 'product_id');
}
public function answers(){
    return $this->hasMany('App\Models\ProductFaqAnswers','faq_id');
}

'productFaq' => function($faq){
    $faq->selectRaw('faq_id,user_id,user_name,product_id,product_name, date_of_enquiry,published,question')
        ->with(['answers' => function($answers)
        {
            $answers->select(['faq_id','answer','user_name','date_of_answer'])
            ->where('published','=',1);
        }
    ]);         
 },

1 Ответ

0 голосов
/ 20 февраля 2019

Вы можете вызывать метод with только в модели, но не в построителе запросов, поэтому это должен быть первый оператор, потому что когда вы можете selectRaw, он вернет вам новый экземпляр построителя запросов:

$faq->with(['answers' => function($answers) {
    $answers
        ->select(['faq_id','answer','user_name','date_of_answer'])
        ->where('published','=',1);
 }])
 ->selectRaw('faq_id,user_id,user_name,product_id,product_name,
date_of_enquiry,published,question')->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...