2017-02-06 8 views
0

私はLaravelのインストールとAdldapの使用に問題がある... エラーメッセージ:Laravel 5.4 - Adldap - 私が受け取る未定義のメソッドAdldap Adldapに呼び出し::検索()

FatalThrowableError in UserCreationController.php line 100: 
Class 'App\Http\Controllers\Adldap' not found 

ドキュメンテーションに従ってAdldapをインストール/デプロイしました。他の場所から呼び出すと動作しています。

作業するもの

Route::get('ldap', function() { 
    $results = Adldap::search()->where('ou', 'ends_with', ' Users') 
           ->orWhere('ou','not_contains', 'Production') 
           ->sortBy('ou', 'asc') 
           ->get(); 


    foreach ($results as $result) { 
     dump ($result->ou); 
    } 

ページが正しくダンプを表示します。すべてが順調。

(上記のエラーコードが出力されます)。ルートはコントローラを呼び出す ...

ルート:

Route::get('newuser', '[email protected]'); 

コントローラー:

public function GetUserOrganizationalUnits() 
{ 
    $results = Adldap::search()->where('ou', 'ends_with', ' Users') 
           ->orWhere('ou','not_contains', 'Production') 
           ->sortBy('ou', 'asc') 
           ->get(); 
    return view('newuserform',compact('results')); 
} 

は、なぜそれが呼ばれるコントローラから直接ではなく、ルートとウェブPHPから取り組んでいますか?

私はすでに同様、次の明示的に追加してみてください...

use Adldap\Contracts\AdldapInterface; 

ファサードが宣言されていると言っても、これを呼び出さずに、ウェブルートで動作します...

あなたが助けてくださいことはできますか?

ありがとうございました。あなたも、この「使用Adldap \契約での作業得るためにあなたのUserCreationControllerでこれを持っている必要がありますあなたのUserCreationController.php

答えて

0

は、私はあなたがファサード

の追加を含めるのを忘れて考えます\ AdldapInterface; "アプローチ:

protected $adldap; 

public function __construct(AdldapInterface $adldap) 
{ 
    $this->adldap = $adldap; 
} 

またはあなたのconfig/app.phpでファサードを実装:

'Adldap' => Adldap\Laravel\Facades\Adldap::class 
+0

確かに、私がやりました。まあ。私は当初はなかったが、私はそれをコメントしてくれたやり方で他の誤りがあった...そして、私はそれがファサードにあって、ウェブルートファイルから働いているので、そうする必要はないと思った... **ありがとうございます** - 問題は解決しました。 :) –

0

use Adldap;

関連する問題