タグ

ブックマーク / blog.capilano-fw.com (12)

  • AdminLTE + Laravel でログイン、パスワード再設定、ユーザー登録機能をつくる方法

    さてさて、たまに聞かれることがあるのですが我々プログラマーからするとウェブデザインというのはどちらかというと別ジャンルなので、あまり得意ではない人って結構多かったりします。(私だけ??) とは、いってもクライアントさんからは、やはり「コストはできるだけ少なくしたい。なんとかなりませんか?」というお話になったりもします。 そんな場合に活用するのが、フリーで管理者ページデザイン一式が利用できるAdminLTEです。 もちろん、プロのデザイナーさんに要望を踏まえてつくってもらったデザインには到底かないませんが、フリーでこのクオリティというのはあまり他のものではなかったりします。(ただし、いろいろなサードパーティのパッケージが含まれているので、ライセンスには最新の注意を払う必要があります) ということで、今回はこのAdminLTEのデザインとLaravelを使って次の機能をもったサイトをつくってい

    AdminLTE + Laravel でログイン、パスワード再設定、ユーザー登録機能をつくる方法
  • JavaScriptでレンダリングしてるページをスクレイピングする方法

    さてさて、実はこのブログではできるだけ直近の記事と関連のある記事をお届けするようにしているのですが、何かそんな内容がないかと考えていたところ1つ思い浮かびました。 それは、前々回の【VuewordpressのRest APIからデータを取得して一覧表示するという記事に関連する内容なのですが、この内容は「コンテンツをJavaScriptでレンダリングする」というものになっています。 そして、今回のテーマは、この JavaScriptでレンダリングされたコンテンツをスクレイピングする 方法です。 どういうことかというと、例えばPHPスクレイピングをしようとしても以下のようにVueで作成する内容は一切情報を取得することができません。 <ul> <li v-for="item in items"> <a :href="item.url" v-text="item.title"></a> </l

    JavaScriptでレンダリングしてるページをスクレイピングする方法
  • たった3ステップ!Laravel Gateで実行権限を導入する実例

    さてさて、以前公開した「シンプル!Laravelで「権限つき」ログインさせる方法」では、ユーザーごとにアクセスできるページを決め、権限が無い場合は強制的にリダイレクトするというテクニックを紹介しました。 このテクニックを使えば、とてもシンプルにユーザータイプでアクセスページを分けることができます。ただ、アクセスではなく実行権限となると話は少し違ってきます。 例えば、 社長だけがデータ削除できる 社員は変更が可能 アルバイトは見るだけ というような、より細かい権限をつけたい場合です。 しかし、そこは人気フレームワークのLaravelです。 実は、このようなより複雑な実行権限をつけることができるLaravel Gateという機能を標準搭載しているんですね。 そこで! 今回はこのLaravel Gateを使って役職ごとに実行権限をつける実例を紹介します。ぜひ参考にしてみてくださいね。 ※ 開発環

    たった3ステップ!Laravel Gateで実行権限を導入する実例
    sotukenyou
    sotukenyou 2020/07/23
    ; return (in_array($user->role, $user_types)); } /* 削除 */ public function delete(User $user) { return ($user->role == 'president'); // 社長だけOK } }”
  • シンプル!Laravel5.6で「権限つき」ログインさせる方法

    さてさて、毎回言ってますけどLaravelには最初から強力な機能がたくさん備わっていて、開発効率が飛躍的に向上すること間違いなしだと思っています。 ただ、そんな中にあってもデフォルトではついていない機能もあって、「権限つきのログイン」もそのひとつです。 権限つきログインとは? 「権限つきログイン」というのは、ログイン機能にユーザータイプが分かる情報を追加したもので、 管理者だけが閲覧できるページ お客さんには見せたくないページ 通常ユーザーだけに表示するイベント情報 といった、ユーザータイプでいろいろな切り替えができるようになります。 ということで、今回は練習として以下2つでログインができるようにしてみましょう。 owner ・・・ お店のオーナー customer ・・・ お客さん 目指す機能 ゴールは、 お店のオーナーだけ表示できるページ ログインしていれば誰でも表示できるページ をつ

    シンプル!Laravel5.6で「権限つき」ログインさせる方法
  • Laravel 7.xの新ルート機能(モデル・バインディング)実例

    さてさて、前回記事「新コンポーネント機能!実例」では、Laravel 7.xの新機能の中からコンポーネントについてをご紹介しました。 そして、今回はもうひとつ「ちょっと地味だけど前から欲しかった」機能について実例をまとめてみました。 その内容とは・・・ ルートの新しいバインディング方法 です。 例えば、Laravelではルートを以下のようにしてhttp://your-site.test/user/1にアクセスすると、自動的にIDが1のデータをUserモデルから取得してくれるようになります。 use \App\User; Route::get('user/{user}', function(User $user) { // DBからデータを自動取得 // }); これは「モデル・バインディング」と呼ばれるものでコード量が少なくて済むLaravelの強力な機能になっています。 ただ、この機能に

    Laravel 7.xの新ルート機能(モデル・バインディング)実例
  • 完全な手順!LaravelでAjaxコンテンツをつくる方法

    最近ではホントにAjaxを使ったウェブコンテンツが多くなってきましたね。 個人的にはSPA(Single-page Application)っていうのは、「かっこいいけど複雑すぎて保守に向かないやりかた」という位置づけに落ち着いたんですけど、それでもやっぱりAjaxを使って開発をすると時短になりますし、とても重宝しています。 そこで、今回は開発者として、 今からAjaxを使ってお問い合わせ機能を作れ! と言われたらどんな流れで開発を進めるのか?を順を追って説明してみたいと思います。 開発環境は、 PHP: Laravel 5+ JavaScript: Vue.js, axios です。では行ってみましょう! サンプルはこちら 1.土台をつくる まずは土台となる3つのファイルをつくらないといけません。 この場合、以下の3つですね。 コントローラー(Controller) ルーティング(Rou

    完全な手順!LaravelでAjaxコンテンツをつくる方法
  • すぐできる!Laravelとselect2をAjaxで連携させる方法

    さてさて、最近このブログではVueは基としつつも「jQueryの優秀なプラグインはどんどん使っていこう」という流れがあります。 というのも、最近のフロントエンド業界はトランスパイル、ビルドなど複雑になりすぎてしまって「それってホントに効率的なのかな???」という疑問がなくもないからです。 ※ 特にnpm run watchの自動ビルドは、ブラウザで確認するまでに多少時間がかかります。なので、開発テンポが悪くなるんであまり好きじゃないんです・・・😣 そして、jQueryのプラグインの中で気に入っているのがselect2です。 select2は通常のセレクトボックスに検索機能を追加することができるパッケージで、特に選択肢がたくさんある場合はとても便利です。 こんなカンジです。 ↓↓↓ そこで! 今回はこのselect2を、Ajaxを通してLaravelと連携させる方法をご紹介したいと思いま

    すぐできる!Laravelとselect2をAjaxで連携させる方法
  • 全117種類!Laravel 5.6〜7.xのコレクション実例

    さてさて、以前「Laravelの便利なコレクション・メソッド7選!」を公開した時からいつかやりたいと思っていたのが、 全Laravel Collectionメソッド の使い方を再チェックすることです。 なぜなら、Laravelはマイナー・バージョンアップでも新しいメソッドを追加するので、定期的にチェックをしておかないとせっかくの便利な機能を見逃してしまうからです。 ということで、過去にあまりにも膨大な量になりそうで敬遠してた「Laravel Collection」の全実例をケース別でまとめてお届けしたいと思います。 開発環境: Laravel 5.6 〜 Laravel 7.x 【追記:2020.3.7】この記事は公開当時Laravel 5.6向けに作成されたものに加筆修正されたものです。そのため、記事の公開より後に追加されたメソッドについては、有効なバージョン情報を載せていますが、もし何

    全117種類!Laravel 5.6〜7.xのコレクション実例
  • 全15件!Laravel・使い回しできるAccessor実例

    さてさて、Laravel 5.7 がリリースされた関係で、最近は主に新しい機能についての記事を公開してきましたが、この辺でLaravelの基的な機能についても深く掘り下げてみたくなりました。 そして、今回の基的な機能は、Accessor(アクセッサー)です。 Accessorとは、DBから取得したデータを自動的に加工することができる機能です。 例えば、以下のようにuser_codeなどとして、ゼロで埋められたコードを取得できるようにする場合ですね。 $user = \App\User::find(1); $user->user_code; // 例: 0001 これの何がいいかと言うと、一度Accessorを作っておくと、後でいちいちデータ加工するコードを書くことなく、自動的に調整された正しいデータを取得できるようになるからです。 ということで、今回はそんなAccessorの便利な実例

    全15件!Laravel・使い回しできるAccessor実例
  • Laravelリダイレクト実例・全5パターン

    さてさて、Laravelには様々な機能がたくさんありますが、リダイレクトもそのうちの1つだと思います。 普段Laravelを使っていると、ついつい忘れがちになってしまいますけどこのリダイレクト機能、過去にPHPのみで実装した場合は以下のようにヘッダー内にlocationを指定し、送信データはひとつひとつセッションに格納したりしてたことを思い出すと、ホントに便利になったな〜と実感する今日このごろです。 header('Location: http://www.example.com/'); die(); ということで、今回はLaravelのリダイレクトを実例とともにまとめてみたいと思います。 基的なリダイレクト リダイレクトの基形はこうなります。 return redirect('todofuken/tokyo'); こうすることで、「http://*****.com/todofuken

    Laravelリダイレクト実例・全5パターン
  • Laravel でファイルを外部ストレージ(SFTP)へ保存・取得する全13実例

    さてさて、LaravelPHPでウェブサイトを構築するフレームワークとしてはほぼ王道の選択肢といった雰囲気すら持ち始めているように感じています。 それは、やはりLaravelがインストールした時点で様々な機能を持っているからなのですが、実はLaravelには単体のウェブサイトのためのシステムだけではなく、他のサーバーやストレージと連携する機能も持っているのをご存知でしょうか。 例えば、サイトが大規模になってきた場合にしばしば必要になってくるのが「分散ストレージ」です。ちょっと言葉は難しいですが、簡単にいうと「ファイルは別サーバーで管理したほうがいいよね」ということです。 メリットとしては、大容量でも比較的安価に利用できるHDDのサーバーを選択することもできますし、もしそのサーバーの容量を増やしたくなった場合でも、サイト自体を移転することなくファイルサーバーだけを移転させることもできます

    Laravel でファイルを外部ストレージ(SFTP)へ保存・取得する全13実例
  • 【Laravel】ファイルのアップロード機能をつくる(ダウンロード可)

    さてさて、先日300記事を突破したので過去の内容をチェックしてみることにしました。 すると、「あれ、記事にしてなかったっけ❓❓」というものがありました。 それは・・・ Laravelでファイルをアップロードする機能 です。 過去にファイルアップロードを効率化する独自パッケージ「ClampBolt」を公開しているので、てっきり記事として公開しているものと勘違いしていました😂 そこで❗ 今回はLaravelで顧客データを保存&プロフィール画像も一緒にアップロードできる機能を作ってみたいと思います。 ぜひ楽しみながらやってみましょう❗ (なお、根を理解していただきたいので、今回ClampBoltパッケージは使いませんm_ _) 「できるだけ他でも使いやすい形にします👍」 開発環境: Laravel 7.x モデル&マイグレーションをつくる まずはDB関連からやっていきます。 モデル、マイグ

    【Laravel】ファイルのアップロード機能をつくる(ダウンロード可)
  • 1