php - Laravel 5 keep views and models in separate folder in resources views directory -


i have searched alot requirement did not found working solution me. creating web application using laravel 5, want keep controllers related admin access admin sub-folder in controllers folder. have found answer on laravel controller subfolder routing concern keep views , models in separate folders can manage without hassle. example laravel 5 allow keep views controllers in below format

  • resources
    • views
      • layouts
      • controllername(for controller specific view folder)
        • index.blade.php

now want this

  • resources
    • views
      • layouts
      • admin
        • controllername(for controller specific view folder)
          • index.blade.php

i looking same kind structure model laravel 5 provide model directly app folder. have found somewhere on net can create folder model in app directly , need specify namespace in model below code admin folder in app directory.

<?php      namespace app\models\admin;      class users extends model{     // stuff here     }  ?> 

any allow me go further mu project.

you have complete freedom on structure of application. if view is

resources/views/admin/mycontroller/index.blade.php 

and controller placed app/http/controllers/admin/mycontroller.php file, can use view way:

namespace app\http\controllers\admin;  use app\http\controllers\controller;  class mycontroller extends controller {     public function index() {         return view('admin.controller.index');     } } 

concerning models, again laravel flexible , uses psr-4 autoloading, namespace structure must match directory structure. if want place users model in app\models\admin namespace, create folder structure:

app/     models/         admin/             users.php ... resources/ vendor/ 

in users.php file, put model class:

<?php namespace app\models\admin;  use illuminate\database\eloquent\model;  class users extends model {     // ... } 

note namespace of users matches directory structure:

  • app mapped app/ directory
  • app\models mapped app/models
  • app\models\admin mapped app/models/admin
  • and app\models\admin\users mapped app/models/admin/users.php

if users class intended replace standard laravel user eloquent model, have change config/auth.php config file , replace line

'model' => 'app\user', 

with

'model' => 'app\models\admin\users', 

i hope helped.


Comments