Laravel 5.4 - Adldap - 调用未定义的方法 AdldapAdldap::search().



我的Laravel安装和Adldap的使用有问题...我收到的错误消息:

FatalThrowableError in UserCreationController.php line 100:
Class 'AppHttpControllersAdldap' 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', 'UserCreationController@GetUserOrganizationalUnits'); 

控制器:

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'));
}   

为什么它直接从带有路由的 web php 工作,而不是从被调用的控制器工作?

我已经尝试明确添加以下内容...

use AdldapContractsAdldapInterface;

门面被声明,它在 Web 路由中工作,甚至没有调用这个......

你能帮忙吗?

谢谢。

我想你忘了包括立面

添加:use Adldap;在您的 UserCreationController 中.php

您还需要在UserCreationController中使用它,以便使用"use Adldap\Contracts\AdldapInterface;"方法:

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

或者在配置/应用程序中实现外观.php:

'Adldap' => AdldapLaravelFacadesAdldap::class

最新更新