タグ

ブックマーク / readouble.com (16)

  • 5.5 データベース:シーディング Laravel

    イントロダクションIntroduction シーダ(初期値設定)クラスを使用し、テストデーターをデーターベースに設定するシンプルな方法もLaravelには備わっています。全シーダクラスはdatabase/seedsに保存します。シーダクラスには好きな名前を付けられます。しかしUsersTableSeederなどのような分かりやすい規則に従ったほうが良いでしょう。デフォルトとしてDatabaseSeederクラスが定義されています。このクラスからcallメソッドを使い他の初期値設定クラスを呼び出すことで、シーディングの順番をコントロールできます。Laravel includes a simple method of seeding your database with test data using seed classes. All seed classes are stored in t

    nilab
    nilab 2018/01/18
    Seeder「php artisan make:seeder UsersTableSeeder」「Laravelのインストール時にデフォルトで用意されているDatabaseSeederクラスを変更してみましょう。runメソッドにデータベースINSERT文を追加します」
  • 5.5 データベース:マイグレーション Laravel

    イントロダクションIntroduction マイグレーションとはデータベースのバージョンコントロールのような機能です。アプリケーションデータベースのスキーマの更新をチームで簡単に共有できるようにしてくれます。マイグレーションは基的にLaravelのスキーマビルダとペアで使い、アプリケーションのデータベーススキーマの作成を楽にしてくれます。もしあなたが今まで、チームメイトに彼らのローカルデータベーススキーマに手作業でカラムを追加するよう依頼したことがあるなら、データベースマイグレーションは、そうした問題を解決してくれます。Migrations are like version control for your database, allowing your team to easily modify and share the application's database schema.

    nilab
    nilab 2018/01/18
    Migration「php artisan make:migration create_users_table」「upメソッドは新しいテーブル、カラム、インデックスをデータベースに追加するために使用し、一方のdownメソッドはupメソッドが行った操作を元に戻します」
  • 5.4 Eloquent:利用の開始 Laravel

    イントロダクションIntroduction Eloquent ORMLaravelに含まれている、美しくシンプルなアクティブレコードによるデーター操作の実装です。それぞれのデータベーステーブルは関連する「モデル」と結びついています。モデルによりテーブル中のデータをクエリできますし、さらに新しいレコードを追加することもできます。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

    nilab
    nilab 2018/01/17
    「クラス名を複数形の「スネークケース」にしたものが、テーブル名として使用されます」
  • 5.4 データベース:クエリビルダ Laravel

    イントロダクションIntroduction データベースクエリビルダはスラスラと書ける(fluent)便利なインターフェイスで、クエリを作成し実行するために使用します。アプリケーションで行われるほとんどのデーターベース操作が可能で、サポートしている全データベースシステムに対し使用できます。Laravel's database query builder provides a convenient, fluent interface to creating and running database queries. It can be used to perform most database operations in your application and works on all supported database systems. LaravelクエリビルダはアプリケーションをS

    nilab
    nilab 2018/01/17
    「SQLインジェクション攻撃から守るために、PDOパラメーターによるバインディングを使用します。バインドする文字列をクリーンにしてから渡す必要はありません」「DB::table('users')->where('name', 'John')->first();」
  • 5.4 データベース:利用開始 Laravel

    イントロダクションIntroduction LaravelSQLを直接使用する場合でも、FluentクエリビルダやEloquent ORMを使う時でも、データベースの取り扱いをとても簡単にしてくれます。現在、Laravelは以下のデータベースシステムを使用しています。Laravel makes interacting with databases extremely simple across a variety of database backends using either raw SQL, the fluent query builder[/docs/{{version}}/queries], and the Eloquent ORM[/docs/{{version}}/eloquent]. Currently, Laravel supports four databases:

    nilab
    nilab 2018/01/17
    「データベース設定ファイルはconfig/database.phpです。このファイルで使用するデータベース接続を全部定義すると同時に、デフォルトで使用する接続も指定してください」「DB::select('select * from users where active = ?', [1]);」
  • 5.3 バリデーション Laravel

    nilab
    nilab 2018/01/16
    「バリデーションに適合するとそのまま続けてコードが実行されます。しかし、バリデーションに失敗すると例外が投げられ、適当なエラーレスポンスが自動的にユーザに送り返されます」
  • 5.3 ミドルウェア Laravel

    nilab
    nilab 2018/01/16
    グローバルミドルウェア「あるミドルウェアをアプリケーションの全HTTPリクエストで実行したい場合は、app/Http/Kernel.phpクラスの$middlewareプロパティへ追加してください」
  • 5.4 Bladeテンプレート Laravel

    nilab
    nilab 2018/01/16
    「繰り返し中は、$loop変数が使用できます。この変数により、現在のループインデックスや繰り返しの最初/最後なのかなど、便利な情報にアクセスできます」
  • 5.5 CSRF保護 Laravel

    イントロダクションIntroduction Laravelでは、クロス・サイト・リクエスト・フォージェリ(CSRF)からアプリケーションを簡単に守れます。クロス・サイト・リクエスト・フォージェリは悪意のあるエクスプロイトの一種であり、信頼できるユーザーになり代わり、認められていないコマンドを実行します。Laravel makes it easy to protect your application from cross-site request forgery[https://en.wikipedia.org/wiki/Cross-site_request_forgery] (CSRF) attacks. Cross-site request forgeries are a type of malicious exploit whereby unauthorized commands a

    nilab
    nilab 2018/01/16
    csrf_field ヘルパ関数を使う。「HTMLフォームを定義する場合はいつでも、隠しCSRFトークンフィールドをフォームに埋め込み、CSRF保護ミドルウェアがリクエストの有効性をチェックできるようにしなければなりません」
  • 5.5 エラーとログ Laravel

    イントロダクションIntroduction 新しいLaravelプロジェクトを開始する時点で、エラーと例外の処理は既に設定済みです。App\Exceptions\Handlerクラスはアプリケーションで発生する全例外をログし、ユーザーへ表示するためのクラスです。このドキュメントでは、このクラスの詳細を確認していきます。When you start a new Laravel project, error and exception handling is already configured for you. The App\Exceptions\Handler class is where all exceptions triggered by your application are logged and then rendered back to the user. We'll di

    nilab
    nilab 2017/12/28
    「パワフルで様々なログハンドラをサポートしているMonologをLaravelはログに利用しています。単一ログファイルへのログ、一定期間ごとのログファイル切り替え、システムログへのエラー情報の書き込みを選べる」
  • 5.5 Bladeテンプレート Laravel

    イントロダクションIntroduction BladeはシンプルながらパワフルなLaravelのテンプレートエンジンです。他の人気のあるPHPテンプレートエンジンとは異なり、ビューの中にPHPを直接記述することを許しています。全BladeビューはPHPへコンパイルされ、変更があるまでキャッシュされます。つまりアプリケーションのオーバーヘッドは基的に0です。Bladeビューには.blade.phpファイル拡張子を付け、通常はresources/viewsディレクトリの中に設置します。Blade is the simple, yet powerful templating engine provided with Laravel. Unlike other popular PHP templating engines, Blade does not restrict you from usi

    nilab
    nilab 2017/11/28
    そのおかげでいろんな制御がテンプレファイルに詰め込まれてるよ。。。「他の人気のあるPHPテンプレートエンジンとは異なり、ビューの中にPHPを直接記述することを許しています」
  • 5.1 HTTPリクエスト Laravel

    nilab
    nilab 2017/10/23
    Illuminate\Http\Requestクラス 「isメソッドにより、リクエストのURIが指定されたパターンに合致するかを確認できます。このメソッドでは*をワイルドカードとして使用できます」
  • ヘルパー関数 4.2 Laravel

    nilab
    nilab 2016/11/17
    ヘルパー関数 4.2 Laravel
  • キャッシュ 4.2 Laravel

    nilab
    nilab 2016/11/17
    「設定はapp/config/cache.phpで設定されています。アプリケーション全体でデフォルトとして使用するキャッシュドライバーをこのファイルの中で指定」「MemcachedやRedisなど人気のあるキャッシュシステムをサポート」
  • Laravelクイックスタート 4.2 Laravel

    インストールInstallation LaravelインストーラーVia Laravel Installer 最初にComposerを使用し、Laravelインストーラーをダウンロードします。First, download the Laravel installer using Composer. composer global require "laravel/installer=~1.1" 端末で、laravelコマンドが実行できるように、~/.composer/vendor/bin(Windowsの場合は、C:\%HOMEPATH%\AppData\Roaming\Composer\vendor\bin)ディレクトリーへPATHを通してください。Make sure to place the ~/.composer/vendor/bin directory in your PATH (

    nilab
    nilab 2016/11/04
    Laravelクイックスタート 4.2 Laravel
  • エラーとログ 4.2 Laravel

    nilab
    nilab 2016/10/21
    大きな1ファイルにログを残す代わりに、日毎のファイルへログしたい場合は Log::useDailyFiles(storage_path().'/logs/'.$logFile); のように書く。
  • 1