Laravel
ddとは よくLaravelで、プログラムが正しく動いているか試すために、 dd($some_value); というコードを書いて、$some_valueの値をチェックしたりします。 じゃあ、この関数は何をしているのでしょう? そもそもこの名前は何の略? コード vendor/laravel/fra…
参考 Eloquent:ミューテター 5.1 Laravel 書き方 class User extends Model { /** * ユーザーのファーストネームを取得 * * @param string $value * @return string */ public function setFirstNameAttribute($value) { $this->attributes['first_name'] =…
{{}}ってなんだろう? よく、Bladeを書くときに、 {{ $user->name }} みたいな書き方をすると思います。 データを取得して出力するのはわかりますが、具体的に何をしてるのでしょう? echoとe関数を呼ぶ 上のコードですが、Laravelを通して変換すると、次の…
注意 私のざっくり理解のメモ書きです。 ファサード Laravelのコード全体に、便利なインスタンス用意してくれてるやつ。 起動時にインスタンス用意してくれるやつ。 View::XXX(); こんな感じに、インスタンス化もパス指定もしてないのに使えた関数あったよね…
あくまで考察 あくまで考察。予想です。 私はこれでいいと思った $user = new Model('Users'); こんな感じにテーブル名指定すればいいんじゃね?って。 User.phpを作るにしても、その時点でユーザーはDB意識してるじゃんって。 DB意識させない 最初にUser.ph…
こんなとき使う @foreach($titles as $title) @if($index == 4) @endif @endforeach こんなふうに、4番目のデータのときにだけなにかをしたい場合。 書き方いくつかあります。 $loop変数を使う(Laravel5.3以上) @foreach ($titles as $title) @if ($loop->in…
こんな時に使う フォームでCheckBoxなどのデータをPOSTで受け取る。 Laravel側でRequestを受け取る。 その受け取ったデータをこんなふうに取得したい。 [ 'username' => 'uiro', 'item_number => '5' ] こうかく function doPost(Request $request) { $reque…
直前に見ていたページの取得方法はこちら willow710kut.hatenablog.com こんな時につかう 対象のページを初めて見た時 新しいページ、新しいタブで開いた時 この時は、直前に見ていたページが取得出来ない。 その時の対応をどうするか。 別なページをセット…
こんな時に使う Laravelで書いたSQLの文を確認したい。 $articles = Article::all(); これとか実際にはどんなSQL文で取得したか知りたい 実行後に確認 // これから書くSQL文をLogで取得出来るようにする \DB::enableQueryLog(); // SQL文実行 $articles = Ar…
こんなとき使える ユーザー情報を更新する時に、イベントを発行する。 User::updated(function($user) { if ($user->isDirty('email')) { Mail::to($user)->send(new UserMailChanged($user)); } }); これで、ユーザー情報を変更して(updatedイベント)、 …
引数を入れた時どうなるかも書きました 取得失敗した時の動作が書かれているよ。 willow710kut.hatenablog.com 直前にアクセスしたURL、ページに来るためのリクエスト元のURL こうかく url()->previous(); 結果 "http://blog.hatena.ne.jp/willow710kut" み…
こんな時に使う よく新規会員登録とかで見かける、 パスワード入力 パスワードの確認 とかで、同じパスワード入れないと通らないあれ。 こう書く id='xxx'のバリデーションに、 confirmedを設定 id='xxx__confirmation'を、確認用のformとして用意する id='x…
値を取り出す時に、事前キャストしたい ユーザーが管理者のときに○○したいという時に、以下のようにコードを書きたい $user = new User('uiro'); if($user->is_admin === true) { .... } でも、データベースから取得した$userは0,1で is_adminが入ってる・・…
こんな時に使える コレクション内に、[1,2,3]、[4,5,6]とかの配列を、一個にくっつけたい。 普段なら、foreachで取り出して、一個一個結合させる必要がある。 使うもの collapse() コード $collection = collect([[1, 2, 3], [4, 5, 6], [7, 8, 9]]); $colla…
Formファサード Form::text('email', null, ['id' => 'email', 'class' => 'mail', 'tabindex' => 1]) こんなやつ これだと上手く動かない Form::password('password', null, ['id' => 'password', 'class' => 'pass', 'tabindex' => 1]) この時、formタグに…
書き方間違えてないはず、なぜか反応しない // ① Route::get('/', 'TopController@index')->name('top'); // ② Route::get('/{name}', 'ProfileController@detail)->name('profile_detail'); // ③ Route::get('/list', 'ProfileController@list')->name('pro…
desc table_nameでなにこれとなる なぜ1だったり、4だったり指定されているのかと思って調べてみた。備忘録。 tinyintとは 1byteの数値。 符号なしなら、0から255、符号ありなら、-128から127まで。 tinyint(1)は mysqlの時だけ、0or1を指します。つまり、bo…
現状 php artisan make:migrateをすると出来るファイルはup()とdown()に何も書いていない php artisan make:migrate create_new_tables
基本形 qiita.com Nginx + php-fpmの環境を作ろうとしたらPHPファイルがダウンロードされる utano.jp mcryptをphp7.2でもインストールする方法 blog.apar.jp ぼやき とりあえずわからないところは極力削って環境構築。 わからないままコピペよくない。 一応…
配列にバリデーションをかけたい arrayX = [['key' => 10], ['key' => 'aaa']] こんな感じのやつ。 arrayのkeyに対して、数値であるとバリデーションをかけたいやつですね。 公式ドキュメント バリデーション 5.3 Laravel 配列形式のフィールドをバリデーシ…
sortByとorderByの違いって? sortBy()の使い所は、コレクションをソートする時に使います。 orderBy()はwhere()とかと同じで、データベースから取得する時に使います。 使い方の違い $query->get()->sortBy('id'); $query->orderBy('id')->get(); この2つの…
参考 ペジネーション 5.1 Laravel 手順 ControllerでpaginateをつかってDBからデータ取得。 Viewでrenderで呼び出す(renderは{!! !!}のカッコで囲むこと) コード public function index() { $users = DB::table('users')->paginate(15); return view('user.i…
反対のミューテターに関してはこちらの記事へ willow710kut.hatenablog.com 参考 Eloquent:ミューテター 5.1 Laravel 書き方 class User extends Model { /** * ユーザーのファーストネームを取得 * * @param string $value * @return string */ public fun…
多対多とは ある人は、いくつかのグループに所属しています。 あるグループは、いくつかの人で構成されてます。 これが多対多です。お互いが複数の対象を持ってますね。 これをデータベースで表現すると、中間テーブルと言うものが必要です。 データベースだ…
参照元 Eloquent:リレーション 5.1 Laravel 手法 $posts = Post::whereHas('user', function ($query) { $query->where('name', 'uirou'); })->get(); これでuserのnameがuirouのPostを取得することが出来ます。 前回間違ったものを書いたので訂正。 日記 …
参照元 Eloquent:リレーション 5.1 Laravel 手法 $users = App\User::with(['posts' => function ($query) { $query->where('id', 10); }])->get(); これで、postsのid = 10を書き込んだユーザーが取り出せる。 思いっきり間違えてました。正しくはこちら。…
Mysqlでnullをorderbyしてみた id|number| 1 | 1| 2 | 2| 3 |null| 4 | 4| 5 | 5| これのnumberを昇順(asc)でorderbyしたらどうなるか。 id|number| 3 |null| 1 | 1| 2 | 2| 4 | 4| 5 | 5| ナンデダヨ。 どうして? MySQL :: MySQL 5.6 リファレンスマニュア…
はじめに これは Laravel Advent Calendar 2017 12日目の記事です。 前日は@kawaxさんの1コントローラー1アクション - Qiitaでした。 Web系来てまだ半年の私なので、コントローラーの肥大化は何度も経験してるのに、どう変えればいいのかわからない…… 一度振…
リレーションについてはこれ Eloquent:リレーション 5.1 Laravel こんなんできる 任意のポストについたコメントを取得する DB posts id|post| 1|aaa| 2|bbb| comments id|post_id|string| 1|1|aaaa| 2|1|iiii| 3|2|uuuu| ポスト1には、aaaa,iiiiの2つのコメ…
バリデーション参考 5.1 バリデーション 5.1 Laravel 5.3 バリデーション 5.3 Laravel もし○○の時に、入力必須にする 例)もしアクティブユーザーならば、年齢を入力必須にする 'age' => 'required_if:is_active,true' unique条件にwhereを付け足す [1サーバ…