サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
アメリカ大統領選
public-constructor.com
等間隔で横並びにボタンを並べる(flexbox) 複数の要素を等間隔で並べるには、CSSの display:flex と justify-content: space-evenly を使用します。 複数のボタンを等間隔で配置した例を次に示します。 See the Pen 複数のボタンや画像を同じ感覚で横並びに配置する by aiiro (@aiiro29) on CodePen. この例では、同じ間隔で配置されていることをわかりやすくするために、widthを400ピクセルに、背景色を水色にしたdiv要素をcontentというクラス名で用意しています。 次に、並べたいボタンをinnerというクラス名のdiv要素で囲みます。 このクラス名がinnerのdiv要素に対して display:flex と justify-content: space-evenly を設定することで、複数のボタンを同
はじめに この記事ではNuxt.jsの「assets」ディレクトリと「static」ディレクトリの使い分けと、ディレクトリに配置したファイルの参照方法について紹介します。 assetsとstaticディレクトリの使い分け Nuxtでは画像ファイル等を「assets」、または「static」ディレクトリに配置します。 この2つのディレクトリの使い分けは、webpackでコンパイルしたいかどうかで判断します。 assets ディレクトリ デフォルトの Nuxt のアプリケーション構造は小規模なものから大規模なものまで両方のアプリケーションにとって素晴らしい出発点を提供することを目的としています。アプリケーションは自由に構成でき、必要に応じて他のディレクトリを作成することができます。
UTCからJSTに変更する 変更前の状態では「date」を実行するとUTC時間が表示されています。 $ date Thu Apr 18 06:41:39 UTC 2019 タイムゾーンを変更するには、「/etc/sysconfig/clock」の設定を書き換えます。 さらに、次のように「ZONE」を「Asia/Tokyo」に変更します。 $ sudo vi /etc/sysconfig/clock #ZONE="UTC" ZONE="Asia/Tokyo" UTC=true 続いてシンボリックリンクを作成します。 $ sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime 上記の手順を踏むと、JST時間が表示されるようになります。 $ date Thu Apr 18 15:43:03 JST 2019 cronの時間もJSTに変更
はじめに どうもaiiroです。 この度、インプレスR&D様より『NuxtとGoではじめるWebアプリ開発』の商業誌が出版されました! 本書は技術書典7で頒布した同人誌を底本として、読みづらかったり、分かりづらかった部分をブラッシュアップした内容となっています。 こうして自分が商業誌を出す日が来るとは想像もしていませんでしたが、ご尽力頂いた方々には感謝しきりです。 対象読者 NuxtとGoを触ったことはあるけれども、組み合わせて何かWebアプリを作った経験の無い方、または作ってみたいという方を対象読者として想定しています。 何を作るのか? 本書ではYouTubeの動画検索サイトのつくり方を紹介します。 YouTube APIを使って動画検索機能を、Firebase Authenticationを利用してユーザー登録やログイン機能を実装します。 そのほかに、動画のお気に入り登録機能などの作成
今回はLaravelを使う際に重要となるQuery Builder(クエリビルダー)のうち、データの抽出条件を指定するwhere句についてです。 単純なwhere条件から一部を括弧でまとめる方法等、様々な条件の書き方をサンプルコードとしてまとめました。 ※Laravelのバージョンは5.6を使用しています。 解説 サンプルのコードで使用している$this->postには、サンプル用に作成したEloquentのPostモデルのインスタンスが設定されていることとします。 where() – 基本のwhere句 where()は3つの引数を受け取り、第一引数がカラム名、第二引数が演算子、第三引数が第一引数のカラム名に対する値です。 $this->post->where('is_public', '=', '1') ->get(); AND条件を追加する場合は更にwhere()を呼び出します。 $
この記事では、「画像の上にアイコンや文字、または画像を重ねて表示する方法」を紹介します。 まずは、次の画像をご覧ください。 この画像では、右下に「いいね」ボタンを表示しています。 この表現はCSSの“position: absolute”と”position: relative”を使うことで、実現できます。 アイコンや文字が載せられた画像を用意するのではなく、HTMLとCSSを使って表現することで、次のようなメリットが得られます。 アイコンをクリックできるため、JavaScriptと組み合わせて使用できる アニメーション等の効果を設定できる 画像の上にいいねボタンを表示する 例として、いいねボタンを画像の上に表示する方法を説明したいと思います。 アイコンと画像を表示する まず最初にアイコンと画像を表示します。 アイコンは”Font Awesome”を使って表示します。 HTMLは次のように
解説 tap()の使用例 まず最初にtap()の使用例を示します。 $model = tap(Post::findOrFail(1), function ($post) { $post->title = 'How to use tap function'; }); 上記の例は、findOrFail()を使用してDBを検索、Postモデルのインスタンスを取得し、そのtitleを書き換えています。 tap()は第2引数にクロージャを受け取り、そのクロージャーの引数には、tap()の第1引数が渡されます。 つまり、$postには、Post::findOrFail()の結果がセットされます。 そして、クロージャー内の処理を実行した後、$postが返却されるのです。 クロージャーに引数で渡した値以外をreturn出来ない点に注意下さい。 このサンプルでのtap()のメリットは、下記の2点が挙げられま
この記事では、フッターを画面の最下部(一番下)に固定して表示する方法を紹介します。 「フッターが画面の最下部に表示できず、困っている」という方は、本記事で紹介している方法を試してみてください。 次の表示内容をご覧ください。このHTMLではコンテンツの量が少ないため、コンテンツとフッターとの間隔が詰まってしまっています。 この表示だと画面ごとのコンテンツの最低の高さが統一できず、レイアウトが�崩れて見える恐れがあります。 See the Pen フッターを最下部に固定して表示 – Part1 by aiiro (@aiiro29) on CodePen. 一方、次の表示ではコンテンツとフッターの間にスペースが確保され、フッターがウィンドウの最下部に固定されています。 See the Pen フッターを最下部に固定して表示 – Part2 by aiiro (@aiiro29) on Code
今回は告知記事です。 2019/04/14(日)に開催される『技術書典6』に出展します! 頒布する同人誌が完成したので告知します。 タイトルは『実践!Laravel+Vue.jsではじめるGraphQL入門』です。 知人との共著でして、自分は3章のバックエンド部分を担当しました! 目次を記載しますので、興味を持った方はぜひお立ち寄りください。 サークルスペース: <か58>(https://techbookfest.org/event/tbf06/circle/44790004) 目次 1 Introduction 2 GraphQLの概要 2.1 GraphQLとは 2.2 [発展] GraphQLにおけるページネーション 3 GraphQL + Laravelでバックエンドを開発! 3.1 はじめに 3.2 開発環境の準備~プロジェクト作成 3.3 アプリケーションの開発 3.4 アカ
fishはbashやzshと同じくシェルの1種です。 以前から興味はあったのですが、Macを買い替えたのでzshから乗り換えられるか試してみることにしました。 今回はfishとfisher、pecoを使ってターミナル環境を構築します。 フォントを設定 powerlineフォントをインストール fishを使用する際、テーマによっては文字化けすることがあるため、powerlineフォントをインストールしてターミナルやiTerm2のフォントを変更しておきます。 $ git clone https://github.com/powerline/fonts.git --depth=1 $ cd fonts $ ./install.sh $ cd .. $ rm -rf fonts/ iTerm2のフォントを変更 「Profiles > Text > Font」を選択し、フォントを変更します。 fis
PHPの”json_encode()”は配列を与えられたときに、エンコード結果のJSONを配列として出力する場合とオブジェクトで出力する場合があります。 “json_encode()”でエンコードされるJSONの形式の条件がわからずハマったことがあるので、備忘録としてまとめておきます。 JSONが配列になるか、それともオブジェクトになるかは、配列のキーによって決まります。 配列のキーが連番でソートされていれば配列に、ソートされていない場合はオブジェクトになります。 文章だと伝わりにくいかもしれないので、サンプルコードの変換結果を見てみましょう。 配列のキーが連番でソートされていれば、JSONは配列に変換される まずは配列に変換される場合です。 “$array1″は配列はわかりやすくするために、0からの連番をキーとして明示的に指定しています。 “$array2″キーを指定してはいませんが、”
解説 今回紹介するのは、テスト実行時にDIで生成されるインスタンスをMockeryでモックしたクラスに差し替える方法です。 MockeryはPHPUnitやPHPSpec等のテスティングフレームワークと共に使用されるライブラリです。 GitHub - mockery/mockery: Mockery is a simple yet flexible PHP mock object framework for use in unit testing with PHPUnit, PHPSpec or any other testing framework. Its core goal is to offer a test double framework with a succinct API capable of clearly defining all possible object op
はじめに この記事は Laravel #2 Advent Calendar 2018 の14日目の記事です。 内容 今回はLaravelでテストコードを書く際に、普段使っている処理をまとめてみました。 LaravelにはHTTPリクエストのテストとして、Featureテストがあります。 Laravel is a PHP web application framework with expressive, elegant syntax. We’ve already laid the foundation — freeing you to create without sweating the small... 自分はFeatureテストから書き始めることが多いため、この記事の内容がFeatureテスト関連寄りになっているかもしれませんが、テスト周りで何か思いついたら更新していきたいと思います
こんにちは、aiiro(@aiiro29)です。 今回はLaravel ScoutでElasticsearch用のカスタムエンジンを自作して、Elasticsearchを使って全文検索を実装する方法を紹介します。 カスタムエンジンを自作できるようになれば、検索クエリを自由に設定して検索ができるようになります。 ただ、Laravel Scoutのカスタムエンジンですが、どうやって実装すれば良いかわかりにくいので、備忘録として書いておきます。 実行環境はDockerで起動したElasticsearchとartisan servで起動したローカルサーバーを使用、Laravelのバージョンは5.6です。 composerでライブラリをインストールする composer require laravel/scout composer require elasticsearch/elasticsearc
この記事では、SPAがはじめてという方向けに、”Vue.js”と”Vue Router”、”axios”を使った、SPAの作り方を紹介します。 そのため、「SPAのアプリケーションを作ってみたいけれど、どこから手をつければ良いかわからない」という方向けの内容となっています。 今回作成するアプリケーションは、「Ajaxで自分のIPアドレスを取得し、表示する」ことを目標としています。 実装する機能としてはシンプルですが、「画面遷移」や「Ajaxによるデータ通信」といった、アプリケーションに欠かせない処理を含んでいます。 この記事を参考にSPAを作ってみて、Vue.jsでSPAを作ることが、どういった感じかを掴んでいただければと思います。 作成するアプリケーションのイメージを下記に記載します。 ホーム画面 IPを表示する画面 SPAとは何か? SPAは、”Single Page Applicat
この記事では、Laravel5.7で追加された新機能、Dump Serverの使い方を紹介します。 Dump Serverを使うと、dump()だけではできなかった、dump結果をログのように見返すことができるようになります。 dump()はLaravel5.7より前からあるヘルパー関数で、デバッグを手軽に行えるというメリットがあります。 けれど、そのデバッグがブラウザ上に表示されるため、dumpする内容を変更すると、そのときの結果を見返すことができません。 後からdumpした結果を見返すためには、log()を使用して laravel.log に出力しておく必要がありました。 ただし、laravel.log はdumpしたデータだけでなく他のログも出力されるため、他の埋もれてしまい、見辛くなってしまうことがあります。 Dump Serverでは、結果をコンソール上に出力するため、ログのよう
Secure and easy axios integration with Nuxt.js. Contribute to nuxt-community/axios-module development by creating an account on GitHub. axiosモジュールをインストール まずは npm install でaxiosをインストールします。 npm install --save @nuxtjs/axios nuxt.config.jsの設定 コンポーネントでaxiosを使用する前に、 nuxt.config.js を設定する必要があります。 下記を参考にして、modules と axios を追加してください。 module.exports = { /* ** Headers of the page */ head: { title: 'nuxt-with-
誰向けの内容か? この記事は下記のような悩みがある方に向けた内容となっています。 もし該当するものがあれば、ぜひFirebaseを試してみてください。 「制作したポートフォリオをできるだけ簡単に公開したい」 「Vue.jsやReactを使ってWebサービスを作りたいけれど、バックエンドは苦手なので避けたい」 「フロントエンドの勉強で何か作りたいけれど、バックエンドの実装に時間を掛けたくない」 Firebaseのメリット Firebaseは”mBaaS”(mobile Backend as a Service)、または”BaaS”(Backend as a Service)と呼ばれるサービスです。 Backendとあるように、Firebaseはバックエンド(サーバサイド)の機能を提供しています。 Firebaseを使うと、バックエンド機能をある程度まかなうことができるようになります。 サーバ
アプリケーションを開発していると、メールアドレスの確認がまだ済んでいないユーザーに対して、確認を促すようにメッセージを表示したいということがあります。 メールアドレスの確認機能Laravelでサポートされるようになったことで、自分たちで実装しなければならない処理を減らせそうです。 Laraveの使い勝手が一層向上することが期待できますね。 アプリケーションの開発を安全かつ楽にするためにも、Laravel5.7を使い始める前に、メールの確認機能の使い方と、その仕組みについて確認しておきたいと思います。 Userモデルに MustVerifyEmail を追加する App\User モデルで Illuminate\Contracts\Auth\MustVerifyEmail インターフェースを実装します。 use Illuminate\Contracts\Auth\MustVerifyEmai
はじめに Nuxt.jsではaxiosでリクエストをAPIサーバーに送信する場合、デフォルトだとaxiosのget()の引数を下記のように設定することになります。 APIのエンドポイント http://localhost:8000/api/post プロキシ未使用ver <script> export default { async asyncData(context) { // @nuxt/proxyを使わない場合 let data = await context.app.$axios.$get('http://localhost:8000/api/post'); return {data}; } } </script> すべてのリクエスト処理に対して、上記のようにURLを設定するのはできれば避けたいところなので、nuxt-communityが公開しているproxy-moduleを導入し
こんにちは、aiiro(@aiiro29)です。 前回はファサードの実装を読んで、ファサードとはどういうものなのかを説明しました。 今回はファサードを自作して使用する方法を説明します。 要約 Illuminate\Support\Facades\Facadeを継承したファサードクラスを作成し、getFacadeAccessor()を実装する connfig/app.phpでファサードを登録する 説明 今回作成する独自ファサードの例として、Chronosを使うことにします。 ChronosはCarbonと同じように日付を扱うライブラリで、CakePHPで使用されていますが、CakePHP以外でも使用することができるようになっています。 Carbonとの大きな違いは、Carbonのオブジェクトがミュータブルであるのに対し、Chronosのオブジェクトがイミュータブルであることです。 イミュータ
Collection等のIlluminateパッケージのクラスやファサードにメソッドを追加する方法を紹介します。 要約 Collectionクラスのように、`Illuminate\Support\Traits\Macroable`をuseしているクラスの場合、macro()を使ってメソッドを追加できる メソッドを追加するには、サービスプロバイダーを作成して、boot()内で`Collection::macro(‘メソッド名’, クロージャー)`を定義すればOK 説明 Laravelを使っていると、Illuminate\Support\CollectionやIlluminate\Http\Request等のIlluminate系のクラスを使う場面がよくあります。 Illuminateパッケージのクラスはメソッドを豊富に揃えていて便利ですが、実際のプロダクトで使用している汎用的な処理をメソッド
このページを最初にブックマークしてみませんか?
『public-constructor.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く