【Ruby】何でもかんでも後置ifを使えばいいっていう訳ではない、自分は果たしてちゃんと理解して使っているのだろうか・・・

Rubyでは後置ifというif文をワンライナーで書くことができるものが存在します。

hoge = “hogehoge” If false

みたいなやつですね。

後置ifはすごい便利で、短いときには全部後置ifにしてやるざヒャッハーとなるけど、ちょっと待ってほしい。

続きを読む

【laravel】sentinelを使ってユーザー認証するチェックポイントを作成

laravelでsentinelというユーザー管理・権限管理をするためのライブラリを使いました。

ユーザーのactiveフラグが立っているものだけログインさせたい。 その際にcheckpointを新たに作ったのでメモ。

続きを読む

atomにveda入れてイケイケなエディタにする

AtomでVJできるパッケージを作った #GLSL #livecoding - マルシテイア

これが面白そうだったので、ちょっとやってみる。 だいぶカラフルな躍動感のある画面にできるっぽい。

続きを読む

/usr/local/Cellar/fish/2.6.0/share/fish/functions/__fish_pwd.fish (line 1)を解消する

f:id:utr066:20180214171937p:plain


fishを普段使っているけど、設定ファイルいじったら何もできない時があった。 ターミナルで何打っても反応しないので、Finderから解決。

続きを読む

【Laravel】facadeの作りかた

Laravelすごい忘れてしまった。。 laravelにはFacadeっていうものをあるけど、その時に残したメモがあったから書いておく。

サービスプロバイダーを作る

php artisan make:provider FileManagementProvider

上記のコマンドでサービスプロバイダーのファイルを生成可能。

<?php 
namespace App\Providers;
 
use Illuminate\Support\ServiceProvider;
 
class FileManagementServiceProvider extends ServiceProvider {
    public function boot()
    {
        //
    }
 
    public function register()
    {
        $this->app->bind( 
            'fileManagement',
            'App\Services\FileManagement'
        );
    }
}

registerでlaravelのコンテナに登録する。 その際、どのクラスをどんな名前で登録するのかを記述する。 今回は、App\Services\FileManagementクラスをfileManagementという名前で登録します。

 App\Services\FileManagementクラスを作る

<?php 
namespace App\Services;

class FileManagement {

    public function imageOrText()
    {
    }
}

app/Facadeディレクトリの中に、ファイルを作成する

<?php
namespace App\Facades;

use Illuminate\Support\Facades\Facade;

class FileManagement extends Facade {
    protected static function getFacadeAccessor() {
        return 'fileManagement';
    }
}

ここでさっき書いた名前をreturnします。

providersに追加

app.phpの中のprovidersに作ったproviderクラスを追加。

処理の流れ

providersが読み込まれる

作ったproviderをapp.phpのprovidersに追加しました。 laravelは初期起動時にそれらを全て読み込みます。

今回の例で言えば、以下。

    public function register()
    {
        $this->app->bind(  
            'fileManagement',
            'App\Services\FileManagement'
        );
    }

'App\Services\FileManagement'が呼ばれる。

Viewでファサードを呼び出す

@foreach($allUploadedFiles as $file)

    @if(FileManagement::imageOrText($file->path))
        "画像"
    @else
        "画像じゃないよ"
    @endif

@endforeach

Macのローカルでcronを使いたい

f:id:utr066:20180206002330j:plain

ちょっと記事の投稿を自動化したかったので、cronを使いたい。 cronって言葉は聞いたりするけど、いじったことはなかったので簡単な使い方ぐらいは知りたい。

続きを読む

supervisorをちょっと試してみる

f:id:utr066:20180131191416p:plain

supervisorってものがよくわからないので、とりあえず試してみる。 良い感じにデーモン化してくれるみたいだけど、見えてこない。goのファイルを扱います。

vagrantで試してみる。

続きを読む