Tag frameworkを表示しています。
2018.5.31 木
Laravel5 共通クラス(汎用関数)をつくるでは比較的少量の場合というか基礎的な考え方みたいなものなので実践ではあまり役に立たない場合が多いかも。大きなアプリケーションになってくるとこれだと全然足りないわけです。 なのでここではサービスプロバイダーとして複数のクラスを一括で共通で扱える方法を紹介します。 HelperServiceProviderの作成 サービスプロバイダーを作成します。 php artisan make:provider HelperServiceProvider 作成したHelperServiceProviderのregisterメソッドを以下のようにします。 public function register() { foreach (glob(app_path()....
2018.1.5 金
Laravelのmiddlewareの使いどころは、デフォルトの機能でAuthがあるようにそんなようなところが使い所かと思います。デフォルトでは以下のような機能が備わっています。 メンテナンスモードかどうか判断するミドルウェア Cookieの暗号化/復号化処理を行う機能 指定されたCookieをResponseヘッダに登録する機能 Sessionの生成や取得などを行う機能 Sessionに保存されたエラー情報をViewにセットする機能 CSRFを防ぐためのトークンの発行やチェックを行う機能 Route Model Binding を実行する機能 (Laravel5.3から追加) [Laravel]ミドルウェアを整理してLaravelを軽くする ここらの機能は、 app/Http/Middle...
2017.7.18 火
Bootstrap概要 http://getbootstrap.com/ http://bootstrap3.cyberlab.info/ 細かいことはあまたあるBootstrap解説しているサイトを見てみてください。ここではプラクティスだけにしてます。 Bootstrapをダウンロードして使うわけですがCDNもあるので開発途上ではそれを使った方が便利です。 <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3....
2017.6.27 火
以前にちょっと記事を書いたのですが、5.4でもう一度復習です。ここら辺りはアプリケーションのコアになるので勉強していた方がよいかと思います。 とはいえ認証機能は結構厄介です。というのも選択肢がたくさんあるのと自由にカスタマイズが出来すぎてしまうので、後から保守する人は本当に大変です。 Laravelは非常に便利なコマンドartisanがあるのですが、便利すぎていろいろなことを一度にやってしまうことからGitなどでこまめに見ておくのがおすすめの開発方法です。 認証機能の準備 とりいそぎ認証機能の雛形をartisanで作ります。 (※まだデータベースのマイグレーションを行っていないひとは、Laravel5 モデルとマイグレーションを参考にしてマイグレーションを行ってください。「php artis...
2017.4.30 日
PHPフレームワークのPOST値は結局はPHPなのでスーパーグローバル変数としての$_POSTで受け取れるのですが、これで受け取らないというのが普通です。$_POSTで受け取っちゃうとあんまりよろしくないことになりかねないのでできるだけフレームワークの規約に従うのがよいです。 Laravel 5.4 HTTPリクエスト LaravelのPOST とはいえいろいろな方法で取得できるのもこれまた事実です。私個人としてはDependency Injection (DI)でいろいろやるのがLaravelらしいと思います。 Input (Facade) Request (Facade/DI) FormRequest (DI) Formの設計 ここでは全体の流れだけで把握したいので簡素なものにしておきま...
2017.4.26 水
テーブルを作成する データベーステーブルの作成と管理、モデルとがいっかんして管理できるというのがいいところ。舶来品のLaravelは、model名が単数形(キャメルケース)、テーブル名が複数形(スネークケース)となります。 ここでは以下のように作成します。 term name table名 data_projects model名 DataProject model file app/DataProject.php migration file database/migrations/yyyy_mm_dd_hhiiss_create_data_projects_table.php モデルを作成する Laravel5の解説書にはモデルとマイグレーションは別々に作成することになっていますが、どっ...
2017.4.25 火
データベースでいろいろやる前に LaravelのDB操作は、いわゆるモデルとかエンティティとか使ってやたらと濃厚に接続する方法と、クエリビルダーを使ってあっさり使う方法があります。前者はEloquentORMを使って、後者はその名の通りクエリビルダーを使ってSQL操作します。 ちゃんとしたアプリケーションを作るのだったらDB周りもちゃんとつくった方がよいでしょう。 データベース接続情報 データベースの接続情報を記述するこの2ファイル。 .env config/database.php お好みいろいろあると思いますが、.envに記述した情報をdatabase.phpで使うというのがわかりやすくてよいかと思います。(最初は) どっちにしろ最終的にはdatabase.phpが設定ファイルなので、こ...
2017.4.23 日
いろいろなルーティングの方法があって、ここらがLaravel5というかフレームワークの真髄かなと。 Lravel5の最初の1ページの理解ができたら、ここらは殆どその応用みたいなものなのでそんな難しいもんじゃないです。 httpの難しい話になると、GET,POST,PUT,DELETEということになりますが、正直開発している人間として言わせてもらうとPUTとDELETEは基本的なルーティングにあるようなRoute::put, Route::deleteは正直使った試しがありません。いわゆる動詞として100%使うのが、 Route::get(); Route::post(); の2つになります。なのでここだけ詳しくやります。 ルーティングにパラメータを渡す ルーティングにパラメータを渡す 例によ...
2017.4.11 火
Xcodeインストール Command Line Tools for Xcode Homebrew (書きかけ…) Xcodeインストール 入っていなかったらApple Appsからインストール Command Line Tools のインストール xcode-select --install Mac OSX 10.11 El Capitan にRuby + Rails4 開発環境の構築 Mac OSX 10.12 macOS Sierra にRuby + Rails4 開発環境の構築 Ruby on Rails 4.2 を Mac OS X にインストールする手順をかなり丁寧に説明してみました
2016.3.11 金
https://github.com/github/gitignore Wordpressとかフレームワークとかのignoreファイルとかはここからひっぱってくるととてもいいです。pullばっかり。
2016.3.9 水
Rubyが流行るのはon Railsがあるからです。phpにはLaravelがありSymfonyがありCakePHPがあります。どれもこれも捨てがたいのですが、私はLaravel5が好きです。どうしてかというと、 そんなに大規模な開発はしない そんなに大それたプログラマーではない そんなに多くを学びたくない という理由からです。もしこれに該当する方がいればLaravelがいちばん楽しいです。 Laravel5を理解するために他のフレームワークと比較してみます。Symfonyは言わずと知れた立派なフレームワークであまりにも立派すぎます。大企業が大企業的なポータルサイトや会員サイトを作るのに向いています。というのはMVCがものすごくしっかりしていて、秩序だてられていて非常に厳格な規約によって支え...
2016.3.9 水
ルーティング Laravel5はその他のフレームワークと同様にページの作成はすべてMCVで行います。基本的にはすべてコントローラーを介して情報を返すというのがMCVの役目なのでアクセスされたページがどのコントローラーと紐付いているのかを決定しなくてはなりません。その役目がルーティングになります。 各ページのルーティングは app/Http/routes.php にまとめて記述します。 Laravel5.3からroutesが引越しました。 ルーティングはこちらのファイルに記述します。 routes/web.php 無名関数で文字列だけ表示するページを作成する ここでは単にルーティングしたページにアクセスしたら文字列を表示するというだけなので、いわゆる無名関数でその内容を表示します。デフォルトで...
2016.3.7 月
sqliteのエラー デバックキットなんかで使っています。 SQLSTATE[HY000]: General error: 8 attempt to write a readonly database ./app/tmp/debug_kit.sqliteというファイルがあるのでパーミッションと606か666ぐらいにしておくと治ります。