ふたりはララベル (Laravel PHP Framework)

PHPフレームワークのLaravelの体験記を書いていきます。こんなタイトルのブログですが萌え系アニメは一秒たりとも観たことがありません。

Laravel5

LaravelでPHPUnitを使ってNo tests executed!

Laravel5.4でPHPUnit6を使ったときに「No tests executed!」が出る。Laravel5.4はPhpunit6に対応していないので、vendor内にあるphpunitを使うと解決できる。 php vendor\phpunit\phpunit\phpunit

storeとupdateで共通で使えるバリデーション

storeとupdateでバリデーションを共通化したいけど、updateの時だけユニークチェックしたい。という時の書き方。あまりキレイじゃないね。。。 public function valid() { $validator = \Validator::make($this->toArray(), [ 'code' => 'required|max:255',…

長くなったLaravelのModelを分割

長くなったLaravelのModelを分割する方法の一つとして、私は上位モデルを使うときがある。 Titleモデルのうち、Updateに関する機能を独立させるときはこんな感じ。テーブル名を指定するのがポイント。 class TitleUpdate extends Title { protected $table =…

Laravel5.2からコンテナ登録方法が変わった

古い書き方 $this->app['myapp'] = $this->app->share(function($app) { return new Myapp; }); 新しい書き方 $this->app->singleton('myapp',function($app) { return new Myapp; });

Laravel5でajax

Laravel5.2系の古いバージョンでajax動かしていたんだけど、5.2系の新しいバージョンだと動かない。よくわからないけどTOKEN入れないとダメらしい。js側 $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); ヘッ…

XserverのPHPでエラー

Laravel5.3をXserverで動かそうとしたらエラーになった。 [ERROR] Use of undefined constant STDIN - assumed 'STDIN'bootstrap/autoload.phpの先頭にdefine('STDIN', fopen('php://stdin', 'r'));を置いたら収まった。何だったんだ。

LaravelのPHPUnitでログインする

LaravelのPHPUnitでログインする。 class AccessTest extends TestCase { public function setUp() { parent::setUp(); $user = \App\User::where('name', 'dummy')->first(); $this->be($user); } public function testBasicExample() { $this->visit('home…

Laravel5.2のアプリケーション名を変更する

Laravel5.2のマニュアルからアプリ名変更のコマンドが消えていたのでメモ。 $ php artisan app:name Horsefly

Laravel5のSeederでユーザ自動登録

Laravel5のSeederでユーザ自動登録 class UserTableSeeder extends Seeder { public function run() { \Myapp\User::create([ 'email'=>'Myemail@hatena.ne.jp', 'name'=>'myname', 'password'=>Hash::make('mypassword'), ]); } }

Laravel5でartisanコマンドを自作

artisan用のコマンドは名前が変わって「コンソール」になった。なのでmake:consoleでコマンドを作る。 php artisan make:console FutariUpdate --command=futari:updateapp\Console\Kernel.phpにコマンドを登録する。 use Illuminate\Console\Scheduling\Sch…

Laravel 5

Laravel 5 がリリースされた。時は来た!それだけだ!

Laravel5のスタート画面の格言たち

Laravel5のスタート画面では、格言がランダムで表示されるようになった。↓白くて薄い! どうやって表示しているのだろう?と思ってtemplateの内容を見てみたら Inspiring::quote()というメソッドが格言を表示していた。ソースを追ってIlluminate\Foundation…

Laravel5でHTMLとFORMを使う

Laravel5開発版ではHTMLとFORMがデフォルトから消されたため、使う際にはComposerを使ってインストールする。 composer.jsonに追記する illuminate/htmlをcomposer.jsonに追記してcomposer updateする。Formもこの中に含まれる。 "require": { "laravel/fram…

Laravel5で変わったところ

開発版のLaravel5を触った雑感。 BaseControllerが無くなった。 php artisan migrate:makeが無くなりphp artisan make:migrationになった。 環境設定ファイルが.envになった。 viewがapp直下からresources直下に移った。 HTMLとFORMが無くなった make:comman…

Laravel5(開発版)でモデルを使う

Laravel5 devだとモデルが今まで通りに使えなくなっていた。名前空間「\App」を指定しなきゃダメみたい。

Laravel5を一足先にインストールする

まだ開発中だけどLaravel5をインストールしてみた。 composer create-project laravel/laravel five dev-develop --prefer-distしばらく遊んでみよう。 php artisan -V Laravel Framework version 5.0-dev

workbenchに対してmigrateを実行する

例えば認証パッケージのconfideでmigrateを実行したいときは php artisan migrate --package=zizaco/confideを実行すれば、「vendor\zizaco\confide\src\migrations」フォルダ内が読み込まれる。しかし自作のパッケージだとworkbench内に置かれるのでやり方…