0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Laravel5 導入メモ

Last updated at Posted at 2018-10-04

プロジェクトの作成

  • laravel new larablog

    or

  • composer create-project laravel/laravel larablog --prefer-dist

routes

routes/web.php
    Route::get('/', function () {
            return view('welcome');
    });
    
    Route::get('admin','AdminController@index');
    Route::get('article','ArticleController@index');
    

IDE関連

K:\larablog>composer require barryvdh/laravel-ide-helper
config/app.php
    'providers' => [

        /*
         * Laravel Framework Service Providers...
         */
        Illuminate\Auth\AuthServiceProvider::class,
// ...
        /*
         * Application Service Providers...
         */
        App\Providers\AppServiceProvider::class,
        App\Providers\AuthServiceProvider::class,
        // App\Providers\BroadcastServiceProvider::class,
        App\Providers\EventServiceProvider::class,
        App\Providers\RouteServiceProvider::class,
        Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, // <- 追加
    ],
K:\larablog>php artisan ide-helper:generate

#Auth

K:\larablog>php artisan make:auth
Authentication scaffolding generated successfully.
K:\larablog>php artisan migrate
Migration table created successfully.
Migrating: 2014_10_12_000000_create_users_table
Migrated:  2014_10_12_000000_create_users_table
Migrating: 2014_10_12_100000_create_password_resets_table
Migrated:  2014_10_12_100000_create_password_resets_table

ログイン後のリダイレクト先を変更(以下4カ所)

  • app/Http/Controllers/Auth/LoginController.php
  • app/Http/Controllers/Auth/RegisterController.php
  • app/Http/Controllers/Auth/ResetPasswordController.php
  • app/Http/Controllers/Auth/VerificationController.php
// ...
    /**
     * Where to redirect users after login.
     *
     * @var string
     */
    protected $redirectTo = '/admin';  // <- ここを変更
// ...

#コントローラ

K:\larablog>php artisan make:controller AdminController
Controller created successfully.

#モデル

K:\larablog>php artisan make:model Article
Model created successfully.

#npm
先にNode.js をインストールしておくこと

npm install

npm run dev

dataTables を追加してみる

npm install datatables.net

npm install datatables.net-dt

resouces/js/app.js に

require('datatables.net');

resources/sass/app.scss に

@import url('https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css');

最後に

npm run prod

#DebugBar

K:\larablog>composer require barryvdh/laravel-debugbar
config/app.php
    'providers' => [
// ...
       Barryvdh\Debugbar\ServiceProvider::class,  // <- 追加
// ...    ],

    'aliases' => [
// ...
       'Debugbar' => Barryvdh\Debugbar\Facade::class,  // <- 追加
// ...
    ]
K:\larablog>php artisan vendor:publish --provider="Barryvdh\Debugbar\ServiceProvider"
Copied File [\vendor\barryvdh\laravel-debugbar\config\debugbar.php] To [\config\debugbar.php]
Publishing complete.

.env に

DEBUGBAR_ENABLED=null

こんな感じでメッセージング

    public function index(Request $request)
    {
        $articles = Article::all();
        \Debugbar::debug("読みました");
        return view("article.index", ["articles" => $articles]);
    }

#サービスプロバイダー

mkdir app/Facades
mkdir app/Libraries
K:\larablog>php artisan make:provider LoggingServiceProvider
Provider created successfully.
app/Probiders/LoggingServiceProvider.php
namespace App\Providers;

use Illuminate\Support\ServiceProvider;

class LoggingServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap services.
     *
     * @return void
     */
    public function boot()
    {
        //
    }

    /**
     * Register services.
     *
     * @return void
     */
    public function register()
    {
        $this->app->bind(
            'logger',
            'App\Libraries\Logger'
        );
    }
}
app/Facades/Logger.php
<?php

namespace App\Facades;

use Illuminate\Support\Facades\Facade;

class Logger extends Facade
{
    protected static function getFacadeAccessor(){
        return 'logger';
    }

}

app/Libraries/Logger.php
<?php

namespace App\Libraries;

use Log;

class Logger
{
    private static function logging($message) {
        return print_r($message, true);
    }

    public static function debug($message, array $context = array())
    {
        Log::debug(self::logging($message), $context);
    }

    public static function info($message, array $context = array())
    {
        Log::info(self::logging($message), $context);
    }
// ...
}

config/app.php
'providers'=>[
//...
         App\Providers\LoggingServiceProvider::class,
//...
]

'aliases'=>[
//...
        'Logger' => App\Facades\Logger::class,
//...
]
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?