2015-11-01 6 views
4

enter image description herecomposer.jsonLaravel 5,1 лезвие не работает даже после включения Laravel Коллективного

{ 
    "name": "laravel/laravel", 
    "description": "The Laravel Framework.", 
    "keywords": ["framework", "laravel"], 
    "license": "MIT", 
    "type": "project", 
    "require": { 
     "php": ">=5.5.9", 
     "laravel/framework": "5.1.*", 
     "laravelcollective/html": "5.1.*" 
    }, 
    "require-dev": { 
     "fzaninotto/faker": "~1.4", 
     "mockery/mockery": "0.9.*", 
     "phpunit/phpunit": "~4.0", 
     "phpspec/phpspec": "~2.1" 
    }, 
    "autoload": { 
     "classmap": [ 
      "database" 
     ], 
     "psr-4": { 
      "App\\": "app/" 
     } 
    }, 
    "autoload-dev": { 
     "classmap": [ 
      "tests/TestCase.php" 
     ] 
    }, 
    "scripts": { 
     "post-install-cmd": [ 
      "php artisan clear-compiled", 
      "php artisan optimize" 
     ], 
     "pre-update-cmd": [ 
      "php artisan clear-compiled" 
     ], 
     "post-update-cmd": [ 
      "php artisan optimize" 
     ], 
     "post-root-package-install": [ 
      "php -r \"copy('.env.example', '.env');\"" 
     ], 
     "post-create-project-cmd": [ 
      "php artisan key:generate" 
     ] 
    }, 
    "config": { 
     "preferred-install": "dist" 
    } 
} 

обновленного композитор с помощью artisian команды composer update .then добавил

app.php

'providers' => [ 

     /* 
     * Laravel Framework Service Providers... 
     */ 
     Illuminate\Foundation\Providers\ArtisanServiceProvider::class, 
     Illuminate\Auth\AuthServiceProvider::class, 
     Illuminate\Broadcasting\BroadcastServiceProvider::class, 
     Illuminate\Bus\BusServiceProvider::class, 
     Illuminate\Cache\CacheServiceProvider::class, 
     Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class, 
     Illuminate\Routing\ControllerServiceProvider::class, 
     Illuminate\Cookie\CookieServiceProvider::class, 
     Illuminate\Database\DatabaseServiceProvider::class, 
     Illuminate\Encryption\EncryptionServiceProvider::class, 
     Illuminate\Filesystem\FilesystemServiceProvider::class, 
     Illuminate\Foundation\Providers\FoundationServiceProvider::class, 
     Illuminate\Hashing\HashServiceProvider::class, 
     Illuminate\Mail\MailServiceProvider::class, 
     Illuminate\Pagination\PaginationServiceProvider::class, 
     Illuminate\Pipeline\PipelineServiceProvider::class, 
     Illuminate\Queue\QueueServiceProvider::class, 
     Illuminate\Redis\RedisServiceProvider::class, 
     Illuminate\Auth\Passwords\PasswordResetServiceProvider::class, 
     Illuminate\Session\SessionServiceProvider::class, 
     Illuminate\Translation\TranslationServiceProvider::class, 
     Illuminate\Validation\ValidationServiceProvider::class, 
     Illuminate\View\ViewServiceProvider::class, 

     /* 
     * Application Service Providers... 
     */ 
     App\Providers\AppServiceProvider::class, 
     App\Providers\AuthServiceProvider::class, 
     App\Providers\EventServiceProvider::class, 
     App\Providers\RouteServiceProvider::class, 


     /* 
     * Laravel Collective HTML 
     */ 
     Collective\Html\HtmlServiceProvider::class, 
     //App\Providers\AnnotationsServiceProvider::class, 
    ], 

    /* 
    |-------------------------------------------------------------------------- 
    | Class Aliases 
    |-------------------------------------------------------------------------- 
    | 
    | This array of class aliases will be registered when this application 
    | is started. However, feel free to register as many as you wish as 
    | the aliases are "lazy" loaded so they don't hinder performance. 
    | 
    */ 

    'aliases' => [ 

     'App'  => Illuminate\Support\Facades\App::class, 
     'Artisan' => Illuminate\Support\Facades\Artisan::class, 
     'Auth'  => Illuminate\Support\Facades\Auth::class, 
     'Blade'  => Illuminate\Support\Facades\Blade::class, 
     'Bus'  => Illuminate\Support\Facades\Bus::class, 
     'Cache'  => Illuminate\Support\Facades\Cache::class, 
     'Config' => Illuminate\Support\Facades\Config::class, 
     'Cookie' => Illuminate\Support\Facades\Cookie::class, 
     'Crypt'  => Illuminate\Support\Facades\Crypt::class, 
     'DB'  => Illuminate\Support\Facades\DB::class, 
     'Eloquent' => Illuminate\Database\Eloquent\Model::class, 
     'Event'  => Illuminate\Support\Facades\Event::class, 
     'File'  => Illuminate\Support\Facades\File::class, 
     'Gate'  => Illuminate\Support\Facades\Gate::class, 
     'Hash'  => Illuminate\Support\Facades\Hash::class, 
     'Input'  => Illuminate\Support\Facades\Input::class, 
     'Inspiring' => Illuminate\Foundation\Inspiring::class, 
     'Lang'  => Illuminate\Support\Facades\Lang::class, 
     'Log'  => Illuminate\Support\Facades\Log::class, 
     'Mail'  => Illuminate\Support\Facades\Mail::class, 
     'Password' => Illuminate\Support\Facades\Password::class, 
     'Queue'  => Illuminate\Support\Facades\Queue::class, 
     'Redirect' => Illuminate\Support\Facades\Redirect::class, 
     'Redis'  => Illuminate\Support\Facades\Redis::class, 
     'Request' => Illuminate\Support\Facades\Request::class, 
     'Response' => Illuminate\Support\Facades\Response::class, 
     'Route'  => Illuminate\Support\Facades\Route::class, 
     'Schema' => Illuminate\Support\Facades\Schema::class, 
     'Session' => Illuminate\Support\Facades\Session::class, 
     'Storage' => Illuminate\Support\Facades\Storage::class, 
     'URL'  => Illuminate\Support\Facades\URL::class, 
     'Validator' => Illuminate\Support\Facades\Validator::class, 
     'View'  => Illuminate\Support\Facades\View::class, 

     //Two aliases for HTML Service Provider 

     'Form' => Collective\Html\FormFacade::class, 
     'Html' => Collective\Html\HtmlFacade::class, 

    ], 

Затем создайте мои просмотрные страницы как: -

макеты/app.blade.php

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
     <title>Laravel Quickstart - Basic</title> 
    </head> 

    <body> 
     <div class="container"> 
      <nav class="navbar navbar-default"> 
       <!-- Navebar contents --> 
      </nav> 
     </div> 
     <div class="container"> 
      @yield('content') 
     </div> 
    </body> 
</html> 

tasks.blade.php

[![@extends('layouts.app') 

@section('content') 
    <!-- Current Tasks --> 
    @if(count($tasks) > 0) 
     <div class="panel panel-default"> 
      <div class="panel-heading"> 
       Current Tasks 
      </div> 

      <div class="panel-body"> 
       <table class="table table-striped task-table"> 

       </table> 
      </div> 
     </div> 
    @endif 

    <!-- TODO: Current Tasks --> 
    @endsection][1]][1] 

routes.php [! [Маршрут :: получить (»/', function() { // return view (' welcome '); $ tasks = array ('a', 'b', 'c'); return view ('tasks', ['tasks' => $ tasks]); });] [2]] [2]

enter image description here

enter image description here

+0

whats with '[! ['перед' @ extend' делать? – melvnberd

+0

Вы пробовали называть его «Задачей»? –

+0

@luigonsec, который не имеет значения, PHP нечувствителен к регистру. –

ответ

0

Проблема заключается в том вы пытаетесь получить доступ к представлению напрямую, а это не так, как L aravel работает. Вам необходимо настроить маршрут и получить доступ к этому маршруту, который возвращает требуемое представление.

Например, перейдите на страницу app/Http/routes.php. Это ваш файл маршрутов. В нем вы можете добавить что-то вроде этого:

// The "test" is the uri. Keep this in mind. 
// Think of it as the appended URL. 
// So, it would be something like www.example.com/test 
Route::get('test', function() { 

    // I am returning the view here. 
    // Note that I am returning "tasks", not "tasks.blade.php". 
    return view('tasks'); 

}); 

Затем, основываясь на изображении, вы должны получить доступ к этому маршруту здесь: http://localhost/laravel/public/test

Если изменить URI на что-то вроде «задач»:

// Changing "tests" to "tasks" 
Route::get('tasks', function() { 

    // Note that I am returning "tasks", not "tasks.blade.php" 
    return view('tasks'); 

}); 

Затем к нему доступ в http://localhost/laravel/public/tasks

Прочитайте документацию по маршрутизации для полного пробоя по теме: http://laravel.com/docs/5.1/routing

+0

Я правильно маршрутизировал, но в модели есть какая-то проблема, поэтому теперь могу сказать, что мне нужно изменить вопрос. Теперь я назначил массив в маршруте и он работает. –

+0

Можете ли вы рассказать мне, почему нет класса модели в laravel 5.1? –

+2

Это совершенно другая проблема и вопрос. Вы не должны смешивать разные вопросы в одном и том же вопросе, потому что это может вызвать путаницу для будущих читателей. Теперь, поскольку вы отредактировали и изменили свой вопрос, когда люди находят это и читают ответы, они собираются прочитать ответы, которые полностью не связаны с вашей новой/измененной проблемой. Если вы исправили свою проблему, вы должны отметить правильный ответ. Если у вас возникла новая проблема, вы должны опубликовать новый вопрос. –

0

Вы пропускаете @endif в файле tasks.blade.php

@extends('layouts.app') 

@section('content') 
    <!-- Current Tasks --> 
    @if(count($tasks) > 0){{[email protected] for this section--}} 
     <div class="panel panel-default"> 
      <div class="panel-heading"> 
       Current Tasks 
      </div> 

      <div class="panel-body"> 
       <table class="table table-striped task-table"> 

       </table> 
      </div> 
     </div> 
    @endif{{--Add @endif--}} 
    <!-- TODO: Current Tasks --> 
@endsection 
+0

обновлено, все еще нет коэффициента усиления :( –

+0

@PrafullaKumarSahu может работать эта команда ** 'php artisan view: clear' ** может быть проблема с кешем представления –

+0

все еще нет выигрыша :(должен ли я что-нибудь сделать после очистки кеша с помощью этой команды? –

4

Возможно, вам недостает use App\Task; в верхней части вашего файла routes.php.

У меня была такая же проблема, Class 'Task' not found, и это исправлено. Убедитесь, что ваша task::orderBy.... является правильной капитализацией.

Вот первый маршрут из шахты, например:

use App\Task; 
use Illuminate\Http\Request; 


/** 
* Display All Tasks 
*/ 
Route::get('/', function() { 
    $tasks = Task::orderBy('created_at', 'asc')->get(); 

    return view('tasks', [ 
     'tasks' => $tasks 
    ]); 
}); 
1

Будьте уверены:

  • Имя его Задача вместо задачи
  • Включите use App\Task внутри ваших маршрутов. php
  • Включить пространство имен в первой строке в Task.php: namespace App; (если у вас есть модели в App, конечно)
0

, а также не забудьте поставить эту вещь на свой код в маршрутах .php

Route::group(['middleware' => 'web'], function() { 

    //your current code here 

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