Webpackの導入方法

普段の作業でWeb制作をしていることが多いので、”Webpack V5″というモジュールバンドラーを使ってみることになった。最初は、”Parcel V2″を使おうと思ったのだが、確かにお手軽に設定して使うことが出来るようになったのだけども、トランスパイル(コンパイル的なイメージ)をしたところ、PHPコードがごっそり取り除かれていたので、自分が使うメモとしてWebpackの導入手順を走り書きしておくことにした。

“Webpack V5″のインストール

作業ディレクトリの作成

[userdir$] mkdir {workdir}

作業ディレクトリを作成。作成したら作業ディレクトリに移動するのを忘れずに!

“npm init -y”を実行

[workdir$] npm init -y

初期化された”package.json”を作成。

“npm install -D webpack webpack-cli”を実行

[workdir$] npm install -D webpack webpack-cli

ちゃんと2つともインストールすること。片方でも足りないとダメ!

“npx webpack-cli init”を実行

[workdir$] npx webpack-cli init

“npm”コマンドでは無く、”npx”であることに注意!

対話形式でセッティング

結構質問される。10個くらい質問される。だいたい[Y/n]で答えれば良い。

webpack.config.js の自動生成(インストール)

すべての質問に答えるとインストール(Webpackが使える設定)が自動で行われる。
“package.json”を上書きするかどうか聞かれる時に6つくらいの選択肢が出るが、多分”a”で良いと思う(すべて上書き)。


"scripts": {
  "test": "echo \"Error: no test specified\" && exit 1",
  "build": "webpack --mode=production --node-env=production --color",
  "build:dev": "webpack --mode=development --color",
  "build:prod": "webpack --mode=production --node-env=production --color",
  "watch": "webpack --watch --color",
  "serve": "webpack serve --mode=development --color"
},

↑ 個人的な好みで"--color"(カラーオプション)を追加しているが使えるコマンドはこんな感じ。。。

webpack.config.js の編集

最後に、次の文字列を追加。

{
  ...... (略)
  watchOptions: {
    ignored: "/node_modules/",
  },
};

変換時に “node_modules”ディレクトリ を無視するようになる?

設定が自動生成できた

ちゃんとPHPコードも出力されている。とりあえずこれで、”Parcel V2″ほどじゃないが導入手順がシンプルになった。

【アドレス豆知識】アドレスを使ったWebページ間のパラメータ渡しの方法

通信状態を維持できないHTTP通信

HTTPを使った通信ではWebページごとに、通信(セッション)が独立しているために、HTTP通信時ごとに状態はリセットされてしまう。例えば、よく会員制サイトなどでログインしているか否かなどの判断を処理するために、”HTTPプロトコル”などの”TCP/IPプロトコル”だけでは、ログイン状態を維持することが出来ない。

HTTP通信で通信状態を維持させる技術

通信状態を維持させる方法として、3つの技術がある。

セッション(Session)

セッションとは、「サーバー側」に一意となるIDを保存させて、遷移先のページで照合してユーザーを特定する方法である。

クッキー(Cookie)

セッションとは、「ユーザー側」に一意となるIDを保存させて、遷移先のページで照合してユーザーを特定する方法である。

formタグ

formタグとは、遷移先のページにデータを送るHTMLタグである。遷移先に送るだけなので、上記の「セッション」または「クッキー」のどちらかを、組み合わせて利用する。

遷移先のアドレスに埋め込む

formタグを使って遷移先のWebページにデータを送ることが一般的であるが、このときパラメータとして”GETメソッド”か”POSTメソッド”を選択することになる。”GETメソッド”は遷移先のアドレスにデータを付加して送る方法であり、”POSTメソッド”はHTTPプロトコルの仕様を利用して遷移先に送る方法である。

formタグを使わずにaタグで遷移先にデータを送る

さて、”GETメソッド”は「アドレスにデータを付加して送る」と記載したが、実は手作業でアドレスに付加して送ることも出来てしまう。たとえば・・・

<a href="https://sample-address.com/next_page.html">次のページへ</a>

次に”hrefパラメータ”の値に注目してほしい。

<a href="https://sample-address.com/next_page.html?id=1&name=taro&age=20">次のページへ</a>

"?id=1&name=taro&age=20"というパラメータは、formタグで”GETメソッド”を利用した際に自動的にアドレスにふかされているものと同一である。
ただし、formタグではなく、ただのaタグでパラメータを手作業で付加して次のページに遷移している。

実は、これでもformタグの”GETメソッド”と同じように、遷移先でパラメータを扱うことが出来る。たとえば・・・

echo $_GET[id];
> 1

echo $_GET[name];
> taro

echo $_GET[age];
> 20

※コードに不備があったらお知らせ頂きたい。
※上記の例はPHP言語で表現したが、これは筆者の知識がこれしかないためであるw

繰り返しになるが、HTMLのaタグに手作業でパラメータを設定すると、さもformタグの”GETメソッド”で送ったときと同じように、扱うことが出来る。

formタグを使うほどではないが、遷移先にパラメータを送りたいときに意外と便利なので、忘れないように書いた。

【埋め込みコード最適化】CSSの”aspect-ratio:16/9;”が便利

埋め込みコード(iframe)のサイズ調整

埋め込みコードを含め、ラッパーとなる箱(divなど)の大きさを設定するとき、普段からwidthプロパティやheightプロパティを利用していましたが、どうしても動画の大きさの設定がうまく表示できませんでした。

調べたところ、CSSプロパティの"aspect-ratio"を埋め込みコード代表とする"iframe"タグのラッパータグに使用すると、かなり直感的に大きさの設定が出来ました。

"aspect-ratio"width/heightの比率を設定

Youtubeなどからストリーム動画などをWebページに埋め込んで表示させたいとき、CSSプロパティの"aspect-ratio"を使用するとかなり便利です。何が便利って、この"aspect-ratio"プロパティでは、埋め込み要素のヨコとタテの比率を設定することが出来ます。

代表的な使い方は以下のとおりです。

aspect-ratio: 16/9;

上記のように設定すると、2021年現在において動画の表示比率として代表的な、ヨコ”16″に対してタテ”9″の比率を保持してくれるようになります。

昔の動画に対しては以下のようにラッパータグに設定すると良いでしょう。

aspect-ratio: 4/3;

上記のように設定するとアナログ時代では一般的であった、ヨコ”4″に対してタテ”3″の比率で埋め込みコードの大きさを、比率を保ってくれるようになります。

"width""height"では単位にを使う

埋め込みコードの大きさを、もちろん"px"などで設定してもよろしいのですが、これに限らずレスポンシブデザインを意識すると"%"で単位を設定すると、ブラウザサイズを弄ったりしても比率を保ったまま大きくなったり小さくなったりしてくれるようになります。
注意する点としては、"width""height"などを使う時は、埋め込みコードの"iframe"タグなどに直接設定することです。逆に、"aspect-ratio"はラッパータグに使うので注意しましょう。

Laravel6でVue.js3を使うための設定方法

Laravel6のインストール方法

以前の記事で紹介しているので、リンクを張って割愛とする。
Laravel6の開発環境の構築 | ヒッキー予備軍のブログ

Laravel6環境にVue.js3のインストール方法

まずは、この記事を書く上で参考にさせていただいたページへのリンクはこちらです。

【Laravel6】Vue.js3 + TypeScriptを導入してみた٩( &#39;ω&#39; )و☆★ – Qiita
Laravel-MixがVue.js3に対応した(TypeScript導入まで) – Qiita

  1. Vue.js3 のインストール
    npm install --save-dev vue@next
  2. vue-loader のインストール
    npm install --save-dev vue-loader@next
  3. laravel-mix-vue3 のインストール
    npm install --save-dev laravel-mix-vue3
  4. @vue/compiler-sfc のインストール
    npm install --save-dev @vue/compiler-sfc
  5. cross-env のインストール
    npm install --save-dev cross-env
  6. “resource/js/app.js” の編集
    require('./bootstrap');
    
    import { createApp } from 'vue'
    import App from './App.vue'
    
    createApp(App).mount('#app')
  7. “resource/js/App.vue” の作成
    <template>
      <div>Hello World</div>
    </template>
  8. “webpack.mix.js” に追記
    
    const mix = require('laravel-mix');
    
    require('laravel-mix-vue3');
    
    (略)
    
    //mix.js('resources/js/app.js', 'public/js');
    mix.vue3('resources/js/app.js', 'public/js');
    mix.sass('resources/sass/app.scss', 'public/css');
  9. 設定を反映
    npm install && npm run dev

Typescript は今回、見送ることにしているので掲載しておりません。悪しからず。。。

CSSを書くのが面倒なのでSCSS(SASS)について調べてみた

近頃、Webサイト制作をしているとレスポンシブ要素を含めた場合に、CSSファイルが1000行を超えてしまうことが多々あるので(後で見たときに、わかりやすいよう省略形などは使わない主義)、SASSと呼ばれるCSS拡張言語を使ってみたのだが、かなり記述量を減らせることが出来たので今後も使っていくことにしました。

この記事では、SASSの一種である”Dart Sass”をインストールする方法とかんたんな記述ルールについてまとめているので、将来ど忘れしたときにこの記事を読めば思い出せるようなことを完結に書いていく。

Node.jsのインストール

Node.jsの公式サイトにアクセスして、「最新版ではなく推奨版」をインストールする。Node.jsをインストールすると、Javascriptライブラリを一括管理できる”npm”コマンドも一緒にインストールされる。

プロジェクトディレクトリの作成

サーバーから見た、パブリックディレクトリを作成する。その後、CLIで作成したディレクトリに移動して、”npm”コマンドを以下のオプションで実行する。

npm init -y

SASSのインストール

ここまでの作業で、ディレクトリ内に「”node_modules“ディレクトリ・”package.json“ファイル・”package-lock.json“ファイル」が作成されています。次にSASSコンパイラである”Dart SASS”をインストールするため、もう一度”npm”コマンドを実行します。

npm install sass

SASSコマンドの編集

遂に、SASSコマンドのインストールが完了しました。SASSコマンドは、”SASS(SCSS)”で書かれたファイルを”CSS”構文にコンパイルして出力します。では、コンパイル前のファイルがあるディレクトリとコンパイル後にファイルを出力するディレクトリを、指定してあげましょう。SASSコマンドは実行時にオプションが必要ですので、SASSコマンド実行時に自動的にオプションを指定するエイリアス(別名)を指定しておくと便利です。

sass --color --source-map-urls=relative stylesheet/scss/:css/ --watch

これでSASSコマンド実行時に、自動的にオプションを指定している方のSASSコマンドのエイリアス(別名)の方を実行するようになります。

ちなみに、--watchオプションを指定すると止めるまでSASSコマンドが実行中になるようになります。したがって、SASS(SCSS)ファイルが更新・保存されるたびにCSSファイルが更新されるようになります。
SASSコマンドを実行するCLIをひとつ用意(起動)しておいて作業すれば、以前のCSSを用いたやり方と同じように出来るので便利です。

laravel6でCSSとJSファイルを読み込むためには?

Laravel6以降で必須なNode.js

筆者自身も詳しくはないのですが、Laravel6以降ではPHP言語のフレームワークなのに、なぜかJavascriptの実行環境であるNode.jsが無いと、Webアプリ作成に支障があるようです。

リソースファイルは何処へ

ディレクトリ構造はRuby on Railsより少し複雑で、リソースファイルを設置するディレクトリが2つあります。「publicディレクトリ」と「resourcesディレクトリ」があるのですが、一見すると「resourcesディレクトリ」の中にsassディレクトリとjsディレクトリがあるので、この中に設置するのかなと考えたのですが、これはハズレのようでした。
ならば、と、「publicディレクトリ」にcssディレクトリとjsディレクトリを作成して、相対パスでリソースファイル群を指定したら、取りあえずは動くのですが、フルスタックのフレームワークなのになんかマニュアル操作すぎて違和感が残ります。

Node.js(Javascript)が必要な理由

そこで、インターネットを隈なく探した結果、ようやく見つけたのがLaravel6ではリソースファイルをコンパイルすることが出来るということでした。筆者自身、Sassファイルは最終的にどこかでコンパイルして、CSSファイルを吐き出すという知識を持ってましたので、Laravel6のファイルをしらみつぶしに追っていたところ、ようやく見つけたのが【webpack.mix.js】というファイル内に、有った次のようなコードです。

mix.js('resources/js/app.js', 'public/js')
    .sass('resources/sass/app.scss', 'public/css');

筆者の勘ですが、なかなか臭うソースコードではありませんか。”mix”というのが、知識がなく説明することができませんが、引数を確認したところ「第1引数が入力」で「第2引数が出力」だと考えました。どうやら、これがコンパイルに必要な記述なようです。

リソースファイルのコンパイル

まず、必要なスタイルシートとJavascriptのファイルを同じような記述で、追加します。コンパイルするために必要なツールをインストールするため、次のようなコマンドを実行します。

npm install

上のインストールするためのコマンドは1プロジェクトで1回だけ実行すれば良いようです。

次に、肝心のリソースファイルのコンパイルは、次のようなコマンドを実行します。

npm run dev

さて、「publicディレクトリ」に戻りますと、jsディレクトリとcssディレクトリが新たに生成されて、その中にSassファイルはCSSファイルとして記述されています。

リソースファイルをコンパイルするためにNode.jsが必要なようです。

jsファイルとcssファイルをViewに適用

コンパイルされたリソースファイルは序盤で説明したように相対パスでも指定ができますが、どうやら違うようで、次のように指定するようです。

<link rel="stylesheet" href="{{ mix('/css/test.css') }}">

mixは関数かなんかかなと思ったら、Bladeのファサードの方が正しいようです。jsファイルも同じように指定すれば動きました。

Node.jsを利用して都度コンパイルが必要

ということで、リソースファイルを読み込んで指定することができました。筆者の環境では、これで解決しています。

しかしながら、スタイルシートやJavascriptを編集するごとに、組み込みサーバーを止めてコンパイルしてまたサーバーを実行ってめんどくさいですね。実際に開発するときは、Bashのウィンドウを2つ起動して、1つはサーバー用としてずっと起動しておき、もう1つは、コンパイル用にしておくと便利かと思います。

以上になります。

【php artisan make:~コマンド】Laravel6でWebアプリ開発

Laravel6で必須のコマンド

今回は、Laravel6でWebアプリ開発開始時に必ず必要となるコマンドを、記録します。

Laravelは、MVC形式のWebフレームワークなので、次のようなファイルが必要になります。

  • M:モデル(作成コマンドあり)
  • V:ビュー(Bladeを使う)
  • C:コントローラ(作成コマンドあり)

MVC以外では次のファイルが必要になります。

  • ルーティングファイル(手書き)
  • マイグレーションファイル(作成コマンドあり)

合計すると、「モデル・コントローラー・マイグレーションファイル」で、3回はLaravel6ではコマンドを用いてプログラミングを行うことになります。
※モデルとマイグレーションファイルは記法によっては同時に作成することも可能です。

モデル作成のコマンド

php artisan make:model Models\TestModel

“TestModel”が作成されます。「Models\」は無くても良いのですが、Laravel6ではモデルディレクトリが存在していないため、これを作成コマンドに入れることでモデルファイルを格納するディレクトリの作成及び格納が出来ます。

コントローラー作成のコマンド

php artisan make:controller TestController --resource

“TestController”が作成されます。「--resource」はオプションであり、無くてもよいのですが、各アクションのメソッドを作成してくれるので、とりあえず付加していたほうが良いです。
※必要なければ、後で普通に消せば良い

マイグレーションファイル作成のコマンド

php artisan make:migration create_users_table

“create_users_table”が作成されます。マイグレーションファイルは、作成するテーブルの設計図のようなものであり、マイグレーションファイルを利用している場合、対応しているリレーショナルデータベースシステム(mysql,progresql,sqlite)であれば、どのデータベースでも違いを気にせず、テーブルを作成することが出来ます。

まとめ

最低でも必要なコマンドは上に挙げたとおりです。もちろん失敗したり、修正する場合は様々なコマンドを使う必要があります。

以上になります。

 

Laravel6の開発環境の構築

Laravel6の開発環境構築に必要なこと

この記事は、Laravelのバージョン6の開発環境を構築するのに必要なことをメモします。

とりあえず、必要なものとして以下がある。
また、Windows10 HOMEに構築するので、他の環境では違うかも。。。

  • Laravel(PHPフレームワーク)
  • PHP
  • Composer(ライブラリの管理ソフト)
  • Node.js(Javascriptの実行環境)
  • Yarn(理由はわからん)
  • テキストエディタ・IDE(Visual Studio Codeを使用)
  • Git(無くてもいいが推奨。理由:Bashが使える)

Javascript系

  1. Node.jsをインストール
  2. Yarnをインストール

PHP系

  1. PHPをインストール
  2. Composerをインストール
  3. Laravel(Version6系)をインストール

Laravel(Version6系)をインストールする具体的手順

  1. Git(bash)を起動して、”workspace”ディレクトリに移動
  2. Laravel6のインストールを実行
    composer create-project --prefer-dist "laravel/laravel=6.*" Webアプリ名
  3. Laravel/UIのインストールを実行
    ※インストールしたディレクトリに移動してから実行

    composer require laravel/ui:^1.0 --dev

Laravel6のプログラミング

修正する必要があるのは、「カレントディレクトリの”.env”」と「configディレクトリの”app.php・database.php”」の3ファイル。

3ファイルの設定を変更

設定を変更するファイルは3ファイルですが、変更内容は主に「文字コード」などと、利用する「データベース」を選択する2項目になります。
今回は、”sqlite3″を利用するデータベースとします。

.env

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

を、次のように変更します。

DB_CONNECTION=sqlite

app.php

'name' => env('APP_NAME', 'Webアプリ名'),
'env' => env('APP_ENV', 'development'),
'debug' => (bool) env('APP_DEBUG', true),
'timezone' => 'Asia/Tokyo',
'locale' => 'ja',
'fallback_locale' => 'ja',
'faker_locale' => 'ja_JP',

各種設定を、上のように書き換えます。

database.php

'default' => env('DB_CONNECTION', 'sqlite'),

sqlite3を利用するので、上のように書き換えます。

以上になります。

 

Windows10へのアップデート方法。Windows7ユーザーはまだ無償で出来る!

Windows10はどこで入手するのか

マイクロソフトが今後、新しいOS(オペレーション・システム)を開発・販売を行わないと明言して、事実上マイクロソフトが販売する最終バージョンとなったWindows10であるが、現在(2019年8月下旬)において、Windows7が搭載されているパソコンであれば、無償で正規に手に入れる状況となっております。

↓以下のアドレスから、ダウンロードが可能。
https://www.microsoft.com/ja-jp/software-download/windows10

※著者は、利用している作業所のPCにて、実際にWindows7からWindows10にアップデートに成功

Windows10の導入方法

Windows7といえば、安定性や使いやすさから長年のあいだ、マイクロソフトから次期バージョンのWindows8(8.1)を退け多くの利用者が導入していましたが、「2020年1月で延長サポート」が終了するため、セキュリティの観念から多くのパソコンでOSのアップデートが必要になると考えられます。ただし、日本においてはパソコンの買い換え時以外では、パソコンユーザーが手作業でOSのアップデートを行うことは行われていません。また、市販のOSのWindows10パッケージであっても、ユーザーのパソコンに最適化させるには、普段からWindowsを利用していてOSのアップデートに関して経験豊富なヘビーユーザーであっても、なかなかに骨が折れる作業です。

多くのパソコンで導入されたWindows7

また、Windows7の完成度に対する世間(少なくとも、インターネット上)の評判は大変良好であり、その使いやすさなどの理由から、Windows7の延長サポートが終了するギリギリの期間まで利用したいと考えているユーザーも居るでしょう。ただし、現実は酷なものでサポートが終了する期限は、既にあと6ヶ月以下となっております。

次世代のデファクト・スタンダードとなり得るSSDは必須

本記事としては本末転倒となってしまいますが、補助記憶装置(ハードディスク等)にSSDを搭載していない場合は、ご利用のパソコンごと買い換えることを勧めます。詳しい説明は省きますが、SSDとはHDD(=ハードディスク)の役割をそのまま引き継ぎながら、今まで作業速度のボトルネックとなっていたHDDの高速化された補助記憶装置です。現在、中古のパソコンを購入するわけでなければ、街の電気屋で販売されているパソコンの多くは、SSDを搭載しているものが多く扱われてきています。もし、わからなければ、購入しようとしているパソコンにSSDが搭載されているパソコンに、SSDが搭載されているか、訪ねてみると良いでしょう。

Windows10のインストール方法

本記事は、Widnows10の詳しい手順については省略いたしますが、上記のアドレスからダウンロードしたWindows10は、Windows7からアップデートインストールする方法と、クリーンインストールを行う方法の2つの手段があります。パソコン内のデータが一度、全て削除されてしまうのでバックアップのとり方が分かる人のみ、クリーンインストールを選択すると良いでしょう。逆にバックアップの方法がわからない人は、アップデートインストールの方を選択しましょう。

以上になります。

評判がよく、個人的にもお気に入りだったWindows7ですが、セキュリティホールの存在しているOSを使うわけにはいかないので、数ヶ月前にパソコンを買い換える機会でWindows10に移行しました。まだ、Widnows7の方が使いやすかったと考えていますが、住めば都といいますかある程度はWindows10にも慣れてきています。

初心者が日本でWebアプリ開発を始めるなら、”Ruby on Rails”が良さげ。

Webアプリとは?

プログラマーなら自分で「設計~テスト」までの工程を、自分の思うままに実行してアプリケーション開発をしたいと、考えていたころがあるかと思います。この記事を記述している2019年6月時点においては、タスクトレイに常駐したり、アプリケーションを実行しているコンピューターのハードウェア構成を調べたりといった、一部の機能を除いて、Webアプリケーションで同等の処理を行うことができる時代になってきました。

Webアプリ(Webアプリケーション)とは、ソフトウェアの実行部分がサーバー側に存在したままで、Webブラウザを通して実行及び利用できるアプリケーションのことです。対義語として、デスクトップアプリケーションと言う言葉があります。

Webアプリの実装方法

Webアプリはサーバー側でプログラムが実行されるため、必然とサーバー側には何らかのプログラミング言語の実行環境が存在しなければなりません。また、最近ではフレームワークと呼ばれるプログラミングの際に、必要な機能を呼び出せるプログラム集が利用していることが、増加傾向にあります。

Webアプリ開発で採用されるプログラミング言語

2019年6月時点で、Webアプリ開発で採用される主なプログラミング言語は以下のとおりです。

  • PHP
  • Ruby
  • Python

また、日本における各言語の人気度(話題性)は以下のとおりです。


「1位:Python, 2位:PHP, 3位:Ruby」となっております。

Python(パイソン)は、ソースコードの見やすさを重きにおいており、同じ処理を行うプログラムを複数人にコーディングさせた場合、全員同じプロセスのプログラムが記述されるように調整されているプログラミング言語です。

PHP(ピーエイチピー)は、HTTPサーバーが標準対応していることが多く、サーバーサイドプログラムを初めてプログラミングする際に、最も多く触れられているプログラミング言語です。

Ruby(ルビー)は、すべてのデータがオブジェクトで設計されており、オブジェクト指向言語として高く評価されております。また、Rubyの開発者は日本人であることから、日本語の資料や書籍が多く存在しております。

「PHP・Ruby・Python」とフレームワーク

Webアプリに限らず、高機能のアプリケーション開発をフレームワークやライブラリを利用することがありますが、この3種類のプログラミング言語でも、Webアプリ開発でデファクト・スタンダードと呼べるフレームワークがあります。

2019年6月時点で、各言語のデファクト・スタンダードと呼べるフレームワークは以下のとおりです。

  • Laravel (PHP)
  • Ruby on Rails (Ruby)
  • Django (Python)

また、日本における各フレームワークの人気度(話題性)は以下のとおりです。


「1位:Ruby on Rails (Ruby), 2位:Laravel (PHP), 3位:Django (Python)」となっております。

Webアプリ開発で「Ruby on Rails」を推した理由

これまでの調査結果から、Webアプリ開発で選択されるフレームワークは「Ruby on Rails」が、最も多いと考えられます(※日本国内)。また、プログラミング言語自体の比較では最下位であった「Ruby」が、Webアプリ開発用のフレームワークを使用している場合においては、その順位をひっくり返すほどの人気度であることも、わかります。

人によって考え方は異なるので、すべての人にとって「Ruby on Rails」が最適解であるとは言えません。しかしながら、Webアプリ開発をしたいのであれば、「Ruby on Rails」と「Ruby言語」を勉強することを勧めると思います。また、人気度が高いため、日本語でのWebアプリ開発の書籍やインターネット上の資料も、一番多く存在しております。

筆者も今、もともとプログラマーであったこともありまして、「Ruby」及び「Ruby on Rails」でWebアプリ開発ができるようにゆっくりでありますが勉強中です。