2016-12-13 5 views
0

Я пытаюсь позвонить модели Readdb внутри промежуточного программного обеспечения. но я получаю сообщение об ошибке:Вызов модели внутри промежуточного программного обеспечения laravel

класса 'приложение \ Models \ Readdb' не найден

Мой middlware код:

<?php 

namespace App\Http\Middleware; 

use Closure; 
use App\Models\Readdb; 

class Adminlogin { 

    public function handle($request, Closure $next) { 
     if (!$request->session()->has('userid')) { 
      $db = new Readdb(); 
      return response()->view('admin.auth.login'); 
     } else { 
      return response()->view('admin.dash'); 
     } 
     return $next($request); 
    } 

} 

Readdb Файл:

<?php 
namespace App; 

use \Illuminate\Database\Eloquent\Model; 
use Illuminate\Support\Facades\DB; 

class Readdb extends Model { 

    public function get_setting($name) { 
     $data = DB::table('setting')->select('value')->where('name', '=', $name)->get(); 
     return $data->value; 
    } 

} 

Путь к readdb: /var/www/html/ecommerce/app/Models/Readdb.php

+0

есть что-то странное между "приложение/модели ..." и "App/Models" – Pipe

+0

Можете ли вы поделиться Readdb файл слишком пожалуйста, в т.ч. uding путь к его местоположению. Ваш composer.json также может быть полезен, чтобы увидеть, как там устанавливаются пути. – mopo922

ответ

1

Ваш Readdb существует в пространстве имен App, не App\Models, так как сделать это в ПО промежуточного слоя:

use App\Readdb; 

Или, если ваш composer.json говорит искать App\Models в app/Models директории, обновить пространство имен на Readdb :

namespace App\Models; 
+0

Я использовал ** приложение \ Readdb; ** в промежуточном программном обеспечении, но теперь получаю ошибку: Class 'App \ Readdb' не найден –

+0

@HarenSarma попробуйте второе решение. – mopo922

+0

есть второй решение работа .. но почему не первый! что мне не хватает? –

Смежные вопросы