2016-11-25 73 views
2

我正在对我的模型进行自定义功能以检查用户是否属于外部api列表。Laravel - 调用成员函数addEagerConstraints()在字符串

public function mailchimp() 
    { 
     $mailchimp = new Client(['base_uri' => 'https://us14.api.mailchimp.com/3.0/']); 

     try 
     { 
      $checkEmail = $mailchimp->request('GET', 'lists/768ce70724/members/' . md5($this->email), [ 
       'headers' => [ 'Authorization' => 'apikey ' . config('globals.mailchimp_key') ] 
      ]); 
     } 

     catch(\Exception $exception) { 
      //if ($exception->getResponse()->getStatusCode() === 404) { return 'not a subscriber'; } 

      return 'error'; // where the error occurs 
     } 

     $result = json_decode($checkEmail->getBody()); 

     //return $result->status; 
     return 'success'; 
    } 

这是我如何调用该方法:

$emails = $newsletter 
       ->with('user') 
       ->with('mailchimp') 
       ->paginate(config('globals.results_per_page')); 

return $emails; 

错误:http://prntscr.com/dbm2ts

回答

0

当你USNG with() Laravel试图load a relation。所以,mailchimp()应该是一个关系。

+0

但我不需要关系,我只是想为每条记录执行代码并获取返回的结果,我该怎么做? –

+0

@BrunoTeixeira你为什么不建立单独的数组或集合,并用'$ emails'集合进行协作?或者可以单独使用它。 –

+0

我正在从数据库中检索电子邮件,我需要在加载电子邮件的同时执行此操作 –

0

我无法去控制器上的方法,但我设法从视图中访问它,它运作良好!

相关问题