Laravel Passportとは 平たく言えばAPIにOAuthに従った認証機能を追加できる機能。Laravelのエコシステムの1つ。 すこし大げさなので標準のapi_tokenを利用したり、外部ライブラリを利用するのもあり。 対応するToken発行方式 PassportはOAuthで定義されている4つの方法に加え、Personal Access (Grant) Tokenという主に内部利用向けのToken発行ができる(名前はOAuthの正式な呼び方とは微妙に違うみたい)。 OAuth2 with authorization codes (Auth Code)→SNS認証でよく使うやつ(確認画面あり・Code発行あり) Password Grant Token(確認画面無し。Codeなし。ID, PWでTokenを発行) Implicit Grant Token(いきなりTokenを発
こんにちは、@yoheiMuneです。 Laravelで実装していて、親テーブル取得時に関連する子テーブルの一覧も合わせて取得したいことがあると思います。そんな時に便利なwith関数について、今日はブログを書こうと思います。 目次 何がしたいのか 例えば、投稿を表現するpostsテーブルと、その投稿内容(=1〜N枚の画像)を表現するpost_contentsテーブルがあるとします。特定のPostを取得した際に、それにひもづくPostContentsを一覧で取得したい場合に、どうしたら良いかを記載しています。 手順1:モデル定義で関連(hasMany)を表現する まずは、PostsとPostContentsのモデルを定義し、hasManyを用いて関連も合わせて定義します。 <?php namespace App; use Illuminate\Database\Eloquent\Model;
function run() { Schema::create('parents', function (Blueprint $table) { $table->increments('id'); $table->string('email', 60)->unique(); $table->string('name', 30); $table->timestamps(); $table->softDeletes(); }); Schema::create('children', function (Blueprint $table) { $table->increments('id'); $table->string('email', 60); $table->foreign('email')->references('email')->on('parents')->onDelete('c
Laravelで開発をしている中で、リレーション先のテーブルのカラムに対して検索をかけたいことが発生しました。 これが結構はまってしまいました。 今回は「リレーション先のテーブルに対して検索をかけたい」ケースついてエントリーします。 状況 データベース 部署テーブル:depts 従業員テーブル:employees モデル class Dept extends Model { //hasMany設定 public function employees() { return $this->hasMany('App\Employee'); } } class Employee extends Model { //belongsTo設定 public function dept() { return $this->belongsTo('App\Dept'); } } やりたいこと 1階で働いている
今日はLaravelでよく出てくるCollectionデータのテストコードを書いていて ハマったのでまとめます。 サンプルはこちら。 Post一覧取得APIのテストコード · aihara005/laravelprot@ba2e4b8 · GitHub PHPUnitテスト by aihara005 · Pull Request #3 · aihara005/laravelprot · GitHub PHPUnitの準備 サンプルテストを作る サンプルテストを実行する コレクションのテストを作る テストを実行する エラー PHPUnitの準備 まずはローカルでphpunitを使うための準備。 $ vi .env APP_URL = 自分のURL ※ php artisan serveで立ち上げてる時は http://127.0.0.1:8000 サンプルテストを作る 早速簡単なテストを作っ
こんにちは。 ニシザワです。 Laravelでリレーションさせているデータ ・1対1 ・1対多 ・多対多 があると思います。 これを関連テーブルと一緒に保存する方法を今回は紹介します。 1対1の例 モデルは下記 ※関連モデルにfillableを設定するのを忘れずに。 class User extends Model { protected $fillable = [ 'name', 'email' ] /** * ユーザーに関連する電話レコードを取得 */ public function phone() : HasOne { return $this->hasOne(Phone::class); } } リクエストの中はこのような形になっているとしましょう。 [ 'user' => [ 'name' => 'hoge', 'email' => '[email protected]' ], 'pho
はじめに 思ったより数が多かったので、3回に分けることにしました。 目次 【5.5対応版】 Laravel の Collection を使い倒してみたくなった 〜 サンプルコード 115 連発 1/3(本記事) 【5.5対応版】 Laravel の Collection を使い倒してみたくなった 〜 サンプルコード 115 連発 2/3 【5.5対応版】 Laravel の Collection を使い倒してみたくなった 〜 サンプルコード 115 連発 3/3 概要 Laravel には、Collection という、配列のラッパークラスがあります。 Laravel 標準の ORM である Eloquent で複数レコードを取得する際に、この Collection のインスタンス (正確には Collection を継承したクラスのインスタンス) で返ってきたりしますが、もちろん、アプリ
イントロダクションIntroduction Eloquent ORMはLaravelに含まれている、美しくシンプルなアクティブレコードによるデーター操作の実装です。それぞれのデータベーステーブルは関連する「モデル」と結びついています。モデルによりテーブル中のデータをクエリできますし、さらに新しいレコードを追加することもできます。The Eloquent ORM included with Laravel provides a beautiful, simple ActiveRecord implementation for working with your database. Each database table has a corresponding "Model" which is used to interact with that table. Models allow you
[FuelPHPのORMでinsert前とかをフックして何か処理をする (´・ω・`) - 杏z 学習帳 を見て、Laravel の Model Event を思い出したので書いておきます。 上記みたいに Model をあれやこれやする前後に処理をはさみたい! ということがあると思います。Laravel には Model Event という仕組みが用意されていて楽に書くことができます。 書き方 インサートする前にログを出力したい場合です。 <?php class Sample extends Eloquent { // boot をオーバーライド protected static function boot() { parent::boot(); // インサート前なので creating メソッドを定義 self::creating(function($ribbit) { Log::in
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く